- Does scoutapp/scout-apm-symfony-bundle work with Laravel?
- No. This package is a Symfony bundle and registers itself through Symfony's bundle and dependency injection system, so it does not hook into Laravel's service container, middleware stack, or facades. Laravel projects should use Scout's dedicated Laravel package, scoutapp/scout-apm-laravel, which ships its own service provider and configuration. Both packages report to the same Scout APM service, but they target different frameworks and are not interchangeable.
- How do I install Scout APM in a Symfony application?
- Install it with Composer using composer require scoutapp/scout-apm-symfony-bundle, then register the bundle in your kernel or bundles.php depending on your Symfony version. You then supply your Scout key and application name through the bundle configuration or environment variables. Because the bundle is a thin integration layer, most projects need only a few lines of configuration before traces start appearing in Scout.
- What does Scout APM actually monitor in a Symfony app?
- Scout records real-time performance data for your application, including response times for endpoints, time spent in database queries, and error occurrences. It surfaces slow endpoints and slow queries so you can see which controllers, services, or SQL statements are responsible for latency. The bundle's job is to instrument your Symfony request lifecycle and background work, then forward that telemetry to Scout for analysis.
- Is the performance overhead low enough to run in production?
- Scout is built for always-on production monitoring with low overhead, which is the main reason teams choose it over heavier APM agents. Actual overhead depends on your traffic volume, tracing detail, and how many queries and spans get instrumented, so benchmark in staging before a broad rollout. Running it in production behind a sample rate or feature flag for a short window is a reasonable way to validate the impact.
- How do I configure the Scout key and environment variables?
- Scout integrations typically read a key, an application name, and a monitoring on/off flag from environment variables such as SCOUT_KEY, SCOUT_NAME, and SCOUT_MONITOR. The Symfony bundle exposes equivalent settings under its own configuration namespace, so you can define them in config/packages files or in your .env. Keep the key out of version control, inject it per environment, and set the monitor flag to false locally and in tests.
- Which Symfony and PHP versions are supported?
- The authoritative answer is in the package's composer.json on the GitHub repository and on its Packagist page, which list the exact PHP and Symfony version constraints. Check those before upgrading Symfony, since the bundle's compatibility range is updated alongside major Symfony releases. If you are on an older Symfony version, pinning the bundle to a compatible tagged release is usually the safest approach.
- Can it trace Doctrine queries and slow SQL?
- Yes, slow query tracing is one of Scout's core features, and it reports the SQL statements consuming the most time inside your endpoints. Queries issued through your configured Doctrine DBAL connections are normally captured in the query breakdown so you can spot missing indexes and N+1 patterns. Raw PDO connections or custom database layers may need additional instrumentation to appear in that breakdown.
- How do I stop Scout from sending data during tests or local development?
- Set Scout's monitoring flag to false in your test and dev environments, usually through the SCOUT_MONITOR environment variable or the equivalent bundle configuration. That keeps the instrumentation in place but prevents network calls to Scout's collector, so your test suite stays fast and deterministic. Some teams go further and skip registering the bundle entirely in the test kernel.
- How is this different from the Symfony profiler or Blackfire?
- The Symfony profiler is a development tool: it gives deep per-request detail but is not designed for continuous production monitoring. Scout runs in production continuously with low overhead, aggregates traces across many requests, and highlights slow endpoints, queries, and errors over time. Blackfire and New Relic are heavier profiler and APM alternatives, while Scout's pitch is simpler setup and predictable pricing.
- Is scoutapp/scout-apm-symfony-bundle actively maintained, and who maintains it?
- It is published by Scout APM under the scoutapp vendor name as the official Symfony integration, so maintenance follows Scout's release cycle rather than a single volunteer maintainer. Check the GitHub repository's releases and commit history, plus Packagist download stats, to confirm current activity before adopting it. If you are building on Laravel rather than Symfony, the equivalent official package is scoutapp/scout-apm-laravel.