Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel Flare Laravel Package

spatie/laravel-flare

Send Laravel errors to Flare. With a valid Flare API key, production errors are tracked and you're notified when they happen. Works with Laravel 11+ on PHP 8.2+, and pairs with spatie/laravel-ignition for beautiful error pages.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Observability vendor selection (build vs. buy). This package is not a general-purpose library — it is the first-party Laravel adapter for Flare, a commercial error-tracking SaaS from Spatie. Adopting it is effectively a decision to buy Flare, not a decision to add a dependency. Frame it that way in any roadmap or procurement discussion.
  • Support-cost and MTTR reduction. The core product value is: production exceptions, queue failures, console errors, and (since 3.0) log messages land in one triage surface with alerting, request bodies, route metadata, and traces attached. That is a lever on mean-time-to-resolution and on-call load, which is a defensible line item.
  • Choosing which surfaces get instrumented. v3 makes logs a first-class signal — a dedicated flare log channel that can be added to LOG_STACK to fan out alongside existing targets. That opens a real product decision: do we keep logs in CloudWatch/Datadog and only ship errors, or consolidate logs plus errors into Flare? Per-level filtering (minimal_log_level) lets you ship only warnings and above to control cost and noise.
  • Cost governance and data-volume policy. RateSampler and DynamicSampler with rules on route name, route action ([Controller::class, 'method'] tuples), queue name, and queue connection let you make a per-endpoint and per-job sampling decision. max_attribute_size_in_kb (added 3.3.0) caps trace payload size. These are the knobs that turn "observability is expensive" into a configured policy rather than an argument.
  • Privacy and compliance posture. Cookie and session censoring, plus configurable request/console attribute providers, let you answer "what PII leaves our infrastructure?" concretely. If you operate under GDPR or have enterprise customers with data-processing addenda, this is a gating question, not a detail.
  • Platform bets already made. Support for Octane, Vapor, Livewire v3 and v4 (including SFC stack traces), sync and queued jobs, and streamed HTTP responses means the package tracks the framework bets most Laravel shops have already made. That reduces the risk of a monitoring gap appearing exactly where your architecture is most complex.
  • Feature-level decisions it supports: whether a new integration or background job is "done" (defined as instrumented and alerting), whether a release is safe to ship (error-rate comparison across deploys), and whether an incident needs a rollback versus a hotfix.
  • A caveat worth stating in the PRD itself: the 13 stars and 0 listed dependents are not a quality signal here. This is a vendor-maintained integration whose distribution happens through the vendor's own docs and install guides, not through organic GitHub discovery. Evaluate it on vendor viability and support terms, not popularity.

When to Consider This Package

Consider it when:

  • You are already a Flare customer, or you are actively comparing hosted error trackers and want the reference-quality Laravel integration rather than a generic SDK.
  • You are on PHP 8.2+ and a supported Laravel line. v3.0.0 targets Laravel 11.47+, 12.42+, and 13+; 3.2.0 retroactively added Laravel 10 support, so verify the current compatibility matrix against your pinned version rather than trusting the changelog sequence.
  • Your architecture leans on the surfaces this package actually instruments: queued and background jobs, Horizon, Octane, Vapor/Lambda, Livewire, and console commands. On a plain request/response app the differentiation is much thinner.
  • You want a single signal store for errors and logs, and you are comfortable with OpenTelemetry-flavored log records rather than a hand-rolled schema.
  • You have no dedicated observability engineer and want the integration maintained by the framework's own ecosystem rather than by you.
  • Data residency in the EU matters and a EU-hosted vendor shortens the procurement conversation.

Look elsewhere when:

  • You are already standardized on Sentry, Datadog, New Relic, Honeybadger, or Bugsnag. Adding a second tracker means duplicate alerts, split on-call runbooks, and two invoices. The migration cost is the product cost.
  • You require vendor-neutral, self-hosted, or open-standard telemetry end to end. If the answer to "can we point this at our own collector?" must be yes, adopt the OpenTelemetry PHP SDK directly and treat Flare as one possible backend.
  • You cannot buy a SaaS subscription, or procurement cannot clear a per-event or per-seat recurring line. The package is MIT, but it is inert without a valid Flare API key — that is not a free tier, it is a paid product with an open-source client.
  • Your stack is polyglot. This covers Laravel only; a multi-runtime platform needs a vendor whose non-PHP story is equally first-class.
  • You specifically valued the in-product error solutions that older 2.x versions surfaced. 3.0.0 removed the spatie/error-solutions dependency, the AddSolutions middleware, and the related config, along with reportMessage() and friends. If your team's workflow depended on those, this is a regression you must plan around — spatie/laravel-ignition still covers the local developer error page, but that is a different job.
  • You need deep APM (database query analysis, distributed service maps, infrastructure metrics) rather than request/job traces and error grouping.
  • You are on a version line outside the supported matrix — 3.0.0 also raised the floor to spatie/flare-client-php ^3.0, so an old client pin will block you.

Also budget for the upgrade path. The changelog shows a fast-moving surface with two config-shape-breaking major releases (2.0.0 replaced the config file; 3.0.0 removed features and rewrote the senders, defaulting to LaravelHttpSender with DaemonSender as an alternative). This is a healthy release cadence — releases continue into 3.3.0 with recent additions like the configuring() hook, route metadata attributes, and Livewire v4 fixes — but it is not a "set it and forget it" dependency. Assign an owner.

How to Pitch It (Stakeholders)

For executives — one paragraph: "This is the official integration between our Laravel applications and Flare, a hosted error-tracking service. It replaces 'a customer tells us something broke' with automated alerting the moment an exception or failed job occurs, including the request context needed to reproduce it. The package itself is MIT-licensed and maintained by Spatie, the same team behind much of the Laravel ecosystem's tooling, so there is no bespoke code for us to own. The real commitment is the Flare subscription, which is a recurring cost we should model against support hours and incident downtime rather than against a license fee. It is a buy decision, not a build decision, and it is reversible — our applications keep running without it."

For engineering — the summary:

  • What it is: a service provider plus config that wires Laravel's exception handler, logger, queue events, and HTTP client into the Flare client. Install, set FLARE_KEY, and production errors are reported. With no key set, Flare disables itself entirely, so non-production environments are safe by default.
  • What you get: exception reports with request bodies, route metadata, and stack traces; a dedicated flare log channel you can add to LOG_STACK to fan out logs alongside existing targets; OpenTelemetry-format log records; traces for requests, jobs, and Livewire components (v3 and v4, including SFC stack traces); first-class handling for Octane, Vapor, and sync queues.
  • What you tune: minimal_log_level for log verbosity, RateSampler/DynamicSampler with route- and queue-scoped rules for volume, max_attribute_size_in_kb for trace payload ceilings, cookie and session censoring for PII, and request/console attribute providers for custom context. The configuring() hook lets you mutate FlareConfig before boot, so environment-specific policy lives in code, not in .env sprawl.
  • What to watch: 3.x dropped error solutions and reportMessage() — anyone porting from 2.x needs the upgrade guide, not a composer update. The supported matrix is PHP 8.2+ with Laravel 11.47+/12.42+/13+, plus Laravel 10 as of 3.2.0; confirm against our pins before scheduling the work.
  • What we do not get: multi-language coverage, deep APM, or any self-hosted path. If any of those become requirements, the exit cost is a re-instrumentation project, so decide the vendor question deliberately now rather than defaulting into it.
  • Ask: one engineer-day to install and configure on a single service, two weeks of parallel running against our current alerting to validate signal quality and volume, then a go/no-go on rolling it out across the portfolio.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
oxygen/data
oxygen/core
jengo/base
xiloryx/log-collector
a21ns1g4ts/filament-stripe
la-php/laravel-admin
artisan-build/community-prompts
vleroy/smart
ayles-software/laravel-australian-public-holidays
cboxdk/laravel-id-spatie
cboxdk/laravel-id-billing
cboxdk/laravel-id-billing-bridge
simple-as-fuck/php-performance-log
hsluv/hsluv
seampact/codegen
seampact/hooks
seampact/ir
mehedimi/laravel-amp-mail
happones/laravel-vue-i18n-generator
jwerd/inertia-table