# Error tracking → GlitchTip (compatible SDK Sentry). # Actif uniquement en prod (bundle enregistré prod-only dans bundles.php). # Si SENTRY_DSN est vide/non défini, le SDK est inerte (rien n'est envoyé). when@prod: parameters: env(SENTRY_DSN): '' sentry: dsn: '%env(SENTRY_DSN)%' # Capture des erreurs fatales PHP via le handler. On DÉSACTIVE le listener # kernel pour éviter les doublons avec le handler Monolog (les exceptions du # kernel sont déjà logguées par Symfony → remontées via Monolog). register_error_listener: false register_error_handler: true options: environment: '%env(APP_ENV)%' release: '%app.version%' traces_sample_rate: 0.0 ignore_exceptions: - Symfony\Component\HttpKernel\Exception\NotFoundHttpException - Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException - Symfony\Component\Security\Core\Exception\AccessDeniedException # Handler Monolog → Sentry : remonte les logs niveau ERROR+ comme Issues GlitchTip. services: Sentry\Monolog\Handler: arguments: $hub: '@Sentry\State\HubInterface' $level: !php/const Monolog\Level::Error $bubble: true