spatie/flare-debug-sender
A debug sender for Flare payloads, intended mainly for internal testing. It lets Laravel apps route error, trace, and Zipkin payloads through a configurable channel, with options to pass through data, alter tracing IDs and times, print payload details, and customize curl sender settings.
composer require, no service or account dependency, no data leaving the machine. Build in-house only if you need something the option list does not expose.print_full_payload combined with the passthrough_* flags makes it cheap to answer "exactly which fields — user IDs, request bodies, headers, session data — leave our application for a third party?" That is reusable evidence for a security or privacy sign-off on error tracking, and far more convincing than reading SDK source.Adopt if:
sender class. The README assumes a published config/flare.php with a sender key — confirm that against your installed Flare version before promising anything to a team.Look elsewhere if:
Log::debug covers comparable ground, and Telescope covers far more.CURLOPT_SSL_VERIFYHOST => 0, CURLOPT_SSL_VERIFYPEER => 0) — acceptable for a local throwaway, not something to copy into shared config.sender config contract can shift with Flare majors, and do not build internal tooling on its internal classes.For executives (one paragraph). This is a free, MIT-licensed developer utility that lets our engineers see exactly what our application sends to Flare before it is sent. It is not a customer-facing feature and costs nothing to adopt beyond a small amount of setup time. Its value is speed and confidence: work on error reporting currently gets validated by deploying to staging and waiting for a real failure, and this shortens that to a single local request. It also gives us a credible way to verify what user data actually leaves our systems when an error is reported — useful input to any privacy or security review. The main caveat is maturity: it is a single-vendor, near-zero-adoption package explicitly described as an internal testing tool, so it should be treated as a local convenience and pinned to a version, not as infrastructure we depend on.
For engineering (short version). If you have ever shipped a change to exception context, breadcrumbs, or trace handling and then guessed whether Flare received what you intended, this closes that gap. Set it as the sender in config/flare.php, pick an output channel (Ray if you already run it, otherwise the Laravel log or a file), and the payload is printed instead of sent. The toggles for passthrough of errors, traces, and Zipkin, plus the ID and timestamp replacement, exist so the output is stable and readable enough to diff. Two rules: enable it only in local environments, since it suppresses real reporting, and do not copy the sample config's disabled TLS verification into anything shared. Expect minor churn on Flare major upgrades — 2.0.0 shipped purely to track Flare v3 — so pin it and re-verify after any Flare bump.
Ask. Approve a timeboxed trial by one engineer on the current Flare integration, with a short write-up of whether the payload output was readable enough to be useful and whether the sender override works on our pinned Flare version. Success looks like one real payload bug caught locally that would otherwise have shipped, or a Flare upgrade verified with a payload diff. If neither happens within the timebox, we drop it and keep using Telescope.
How can I help you explore Laravel packages today?