src/Infrastructure/EventSubscriber/PreControllerErrorHandlerSubscriber.php line 19

Open in your IDE?
  1. <?php
  2. namespace App\Infrastructure\EventSubscriber;
  3. use Monolog\ErrorHandler;
  4. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  5. use Symfony\Component\HttpKernel\Event\RequestEvent;
  6. use Symfony\Component\HttpKernel\KernelEvents;
  7. use Psr\Log\LoggerInterface;
  8. class PreControllerErrorHandlerSubscriber implements EventSubscriberInterface
  9. {
  10.     private LoggerInterface $logger;
  11.     public function __construct(LoggerInterface $logger)
  12.     {
  13.         $this->logger $logger;
  14.     }
  15.     public function onKernelRequest(RequestEvent $event): void
  16.     {
  17.         ErrorHandler::register($this->logger);
  18.     }
  19.     public static function getSubscribedEvents(): array
  20.     {
  21.         return [
  22.             // High priority so it runs before controllers
  23.             KernelEvents::REQUEST => ['onKernelRequest'1000],
  24.         ];
  25.     }
  26. }