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

Traceview Bundle Laravel Package

appneta/traceview-bundle

AppNeta TraceView Bundle integrates TraceView (Tracy) application performance monitoring into Symfony apps, adding instrumentation and configuration to trace requests, database queries, and external calls for faster debugging and optimization.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for application performance monitoring (APM). This package is the clearest possible illustration of the hidden cost of "buy": the vendor sells the backend, but the framework glue — opening a transaction, naming it after the route, tagging status/user/tenant, closing it on error — is still your team's code. The bundle exists precisely to cover that gap for Symfony2. The decision it informs is whether you pay for a vendor and own the integration code, or standardize on a neutral instrumentation layer (OpenTelemetry) where the integration work is portable and the vendor becomes swappable.
  • Instrumentation strategy for legacy PHP estates. For a roadmap that still carries Symfony 2.x or pre-OpenTelemetry PHP services, this repo is a working specification for lifecycle-based tracing without touching controllers: hook the request/response/exception cycle, open a span, attach metadata, flush on terminate. That pattern is the deliverable worth extracting; the package is not.
  • Vendor lifecycle and EOL planning. TraceView has been folded into AppNeta/Broadcom's broader observability offering, and the Symfony2 target dates the code to roughly 2013–2016. Zero stars, zero dependents, zero health score, no CI, no release cadence. Any team still pointing at this bundle is carrying an unsupported observability dependency on the roadmap — that is a concrete deprecation line item, not a hypothetical.
  • Framework-fit gating (direct answer for Laravel: no). This is a Symfony2 bundle, registered in AppKernel and bound to symfony/event-dispatcher's EventDispatcherInterface and HttpKernelInterface. Laravel uses Illuminate\Events\Dispatcher and has no Symfony kernel. Composer will not resolve against any Laravel 8–11 symfony/* constraint. This supports a clean "do not adopt" on the adoption question while keeping "yes" on pattern reuse.
  • Roadmap sequencing for observability. It frames the real ordering: validate the vendor and agent on a canary before writing middleware, and choose a reversible backend before instrumenting. The package is evidence that instrumentation written against a proprietary agent API is a re-instrumentation project to undo, not a config change.
  • Cost modeling for autoscaling. TraceView is priced per host/agent and the PHP agent is per-process, so horizontal autoscaling (FPM workers, Kubernetes replicas) multiplies both memory footprint and license cost linearly. That is an architectural constraint worth surfacing before a cluster rollout, not after the first invoice.

When to Consider This Package

Consider it only when all of the following hold:

  • You are on Symfony 2.x — or a non-Symfony app that exposes an EventDispatcher/HTTPKernel-style request lifecycle — and cannot realistically upgrade this quarter.
  • Your organization is already contracted with AppNeta TraceView and the collector/agent is still operational on your side.
  • A supported agent build exists for your exact PHP version and runtime (this is the hard gate — the bundle is inert without the native traceview PECL extension).
  • You need visibility in days, not weeks, and the alternative is no tracing at all.
  • You accept that you are pinning an unmaintained dependency and will own every PHP or framework upgrade breakage, with no security-response path.

Look elsewhere when any of these are true:

  • Laravel, or modern Symfony 5/6/7. Zero supported overlap. Different container, middleware, and event APIs; the bundle will not install or boot. Use a maintained OpenTelemetry bridge or a current first-party SDK.
  • New vendor selection. Do not instrument against an EOL product. Evaluate OpenTelemetry (vendor-neutral, reversible) or a supported commercial APM.
  • Supply-chain-sensitive or zero-dependency environments. Zero stars, zero dependents, no release cadence — there is no community safety net and no Stack Overflow corpus for the bugs you will hit.
  • You need SLAs, active support, or security patching. Enterprise support from Broadcom covers the SaaS product, not a decade-old Symfony bundle.
  • You want to keep options open. A proprietary, framework-version-locked integration raises migration cost; a neutral tracing interface does not.
  • You are containerized/autoscaling and cost-sensitive. Per-host agent pricing scales with replicas.

How to Pitch It (Stakeholders)

Executive summary. This is a small, unmaintained Symfony2 integration bundle that connects applications to AppNeta TraceView, a product line now folded into Broadcom's broader AppNeta offering. It should not appear on any new-build architecture diagram. Its value to us is as a reference design: a few dozen lines showing how to instrument a PHP request lifecycle for tracing with almost no application-code changes. Recommendation: do not adopt; do not install. Spend one to two engineering days extracting the pattern, then standardize on OpenTelemetry or a supported vendor SDK.

For engineering. The mechanism is event-subscriber based: attach to kernel.request / kernel.response / kernel.exception, start a trace, name it after the route/controller, decorate with request metadata, flush on terminate, and close in a finally so exceptions still terminate the transaction. That model ports cleanly to a Laravel service provider plus global middleware wrapping $next($request), registered after StartSession/Authenticate so tenant and user tags are populated, with a Handler::report() hook for exceptions. Two things to flag loudly: (1) the bundle is not the agent — all real instrumentation comes from the native traceview PECL extension, so confirm a build exists for our PHP and runtime before anything else; and (2) despite being catalogued as a general PHP/Laravel package, this is a Symfony bundle and will not install or function in Laravel. Also verify agent behavior under Octane: long-lived workers change how global agent state is scoped and are a known source of cross-request trace misattribution. Queue jobs are not covered at all — you need separate JobProcessing/JobProcessed listeners regardless.

Cost and risk framing. Direct cost is near zero; total cost of ownership is high and open-ended. The vendor endpoint is EOL, the code is unfixed, and every future PHP or framework upgrade becomes our problem — including the failure mode where a routine composer update shifts symfony/* constraints and instrumentation silently disappears while dashboards read "no traffic." Effort to reuse the pattern is small and bounded (roughly a day); effort to reuse the package is unbounded. The same afternoon spent writing Laravel middleware against OpenTelemetry buys the identical capability with a reversible vendor decision and far higher option value. That asymmetry is the whole pitch: buy the pattern, not the package.

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.
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums
rlacerda83/query-parser
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings