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

Sentry Laravel Package

alt-three/sentry

Sentry integration for Laravel applications, helping you capture and report exceptions and errors to Sentry with minimal setup. Includes Laravel-friendly configuration for monitoring production issues and improving application reliability.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. alt-three/sentry is a thin Laravel 5 service-provider/facade bridge over the v1.x Sentry PHP SDK. Its integration surface is narrow and idiomatic for its era: it registers a singleton client from a published config file, exposes a Sentry facade alias, and provides an exception-handler hook so uncaught exceptions in App\Exceptions\Handler are forwarded to Sentry. Architecturally that is a reasonable shape — it matches how a modern Laravel package would wire in — but it is coupled to two moving targets that have both since moved: the Laravel 5.x container/contracts and the Sentry v1 SDK wire protocol. It is not a standalone error-tracking implementation; it is glue, and the glue is what has rotted.

Integration feasibility. Effectively zero on any current stack. The realistic compatibility envelope is Laravel 5.0–5.2 on PHP 5.5/5.6, which means the only applications that can consume it are themselves past end-of-life. For a Laravel 9/10/11 application on PHP 8.x, adoption would require forking and rewriting the provider, the config schema, and the transport layer — at which point the package contributes nothing but a name. There is no partial-adoption path: the exception handler hook is all-or-nothing, and there is no compatibility shim to the official SDK.

Technical risk. High and non-mitigable.

  • Abandonment: archived since 2016, last release 2016-06-04, 7 stars, 0 dependents. Zero community surface means zero incidental bug discovery, zero CVE responsiveness, and no one to ask when it breaks.
  • Protocol drift: the v1 SDK predates envelopes, breadcrumbs, release/health tracking, tracing, and modern sampling controls. Ingestion may still function against a current DSN, but the resulting events are low-fidelity — no stack-context enrichment, no request/user attribution beyond what the bridge hand-rolls — which degrades the tool's core value proposition.
  • Runtime exposure: PHP 5-era code on PHP 8 is a fatal-error lottery (deprecated dynamic properties, removed each(), signature variance). The failure mode is not "Sentry stops reporting," it is "your application 500s in the exception path," which is the worst possible place to fail.
  • PII/compliance: no modern before_send scrubbing hooks. Any GDPR/data-handling posture would have to be built from scratch around an unmaintained dependency.

Key questions. (1) Is there an actual legacy Laravel 5 application in the portfolio still emitting revenue-bearing traffic, or is this an artifact of a dependency scan? (2) What is the underlying need — error visibility, or specifically this bridge? These decouple completely; the need is satisfiable, the bridge is not. (3) If a legacy app exists, what is its own sunset date? A migration to sentry/sentry-laravel is only worth funding if the app outlives the migration. (4) Who owns the decision to leave an EOL dependency in the tree, and is it documented as accepted risk?

Recommendation: do not adopt. Classify as technical debt with a removal ticket, not an integration candidate.

Integration Approach

Stack fit. None for greenfield. The officially maintained sentry/sentry-laravel occupies this exact slot with the same architectural shape (provider, facade, config publish, exception-handler integration), first-party support, and compatibility with current Laravel and PHP. Choosing the archived package over it buys nothing and costs a fork.

Migration path. For an inherited project already depending on alt-three/sentry, the swap is mechanical but not trivial:

  1. Inventory — confirm the actual constraint set (composer why alt-three/sentry), whether the Sentry facade alias is referenced in application code, and whether custom code calls app('sentry') or the raw SDK directly. Direct SDK calls are the expensive case; facade-only usage is a find-and-replace.
  2. Replace the dependency — remove the bridge, require sentry/sentry-laravel, publish the new config. Config keys do not map one-to-one; the DSN key, environment/release fields, and sampling settings all change shape, so treat config as a rewrite rather than a port.
  3. Re-point the exception handler — the modern package hooks Handler::report()/shouldReport() rather than the old provider registration. Verify the ordering relative to existing logging so you don't double-report.
  4. Remap call sites — the facade namespace and several method signatures differ. Anything using the old SDK's message/exception capture directly should be rewritten against the current client or, better, deleted in favour of automatic capture.
  5. Verify with a synthetic exception in staging and confirm event arrival, stack quality, and release tagging before cutting over.

Compatibility. Treat the two packages as mutually exclusive in composer.json; do not attempt to run both. If the application is genuinely pinned to Laravel 5.0–5.2, the official package's older major lines may still cover you — check the version matrix before assuming a framework upgrade is a prerequisite for the SDK upgrade. Decoupling those two migrations is usually the cheaper sequencing.

Sequencing. If a legacy app must survive: (a) pin and document the current state so the build is reproducible, (b) migrate the Sentry integration first — it is low-risk, high-visibility, and independent of framework version, (c) schedule the framework upgrade separately, (d) delete the bridge. If the app is being retired within the same horizon, skip to decommissioning and accept a temporary observability gap rather than funding a migration you'll throw away.

Operational Impact

Maintenance. Zero upstream maintenance is the defining constraint. There will be no patch for a PHP minor-version break, no DSN rotation guidance, no response to a Sentry-side API change. Every future fix is an internal fork, and a fork of a 7-star archived package is a permanent, undocumented ownership burden with no external expertise to draw on.

Support. There is no support channel — no maintainer, no issue triage, no Stack Overflow corpus of substance for this specific bridge. On-call engineers debugging a failure at 3am will find documentation frozen at a 2016 README describing an SDK that no longer matches Sentry's own docs. That is a real MTTR tax on the one system whose job is to reduce MTTR.

Scaling. Throughput is not the concern: the bridge is a synchronous HTTP client, so it scales in the trivial sense and fails in the interesting one. Because capture is in-band, a slow or unreachable Sentry endpoint becomes application latency in the exception path unless the transport timeout is explicitly bounded — and the v1 SDK's defaults are not tuned for that. There is also no sampling control worth the name, so a retry storm or a noisy loop can burn the Sentry quota and, worse, do so while adding latency to every failing request.

Failure modes. Ranked by severity:

  • Fatal in the exception path — PHP 8 incompatibility turns a handled error into a white screen. Highest severity, silent until it happens.
  • Silent capture failure — transport errors are swallowed; you believe you have observability and do not, discovering it during the incident you needed it for.
  • Quota exhaustion — no effective sampling or rate limiting; noisy errors crowd out signal.
  • Stale/insufficient event data — captures succeed but arrive without the context needed to act, producing false confidence rather than false alarms.
  • Unscrubbed PII egress — no before_send hook; sensitive payloads reach a third party by default.

Ramp-up. Learning the bridge itself is trivial — a day for a Laravel-fluent engineer. The real ramp-up cost is the absence of a correct reference: engineers will read 2016-era docs, assume they describe current Sentry behaviour, and build wrong mental models that outlast the package. Budget for a deliberate "unlearn this" step during migration.

Net: the operational profile is uniformly negative — unbounded downside, no maintenance, and no compensating benefit over a first-party alternative that costs one composer require.

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.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console