Перейти к содержанию

PsrLoggerErrorHandler

Запись ошибок слушателей в PSR-3 логгер.

Обработчик по умолчанию: пишет в лог роутера (FileLogger или заданный через setLogger()). Отдельно нужен, только чтобы писать ошибки в другой логгер или с другим уровнем.

Исключение передаётся в контексте под ключом exception, как рекомендует PSR-3.

$events->setErrorHandler(new PsrLoggerErrorHandler($logger));

Methods

__construct

public __construct(\Psr\Log\LoggerInterface $logger, string $level = \Psr\Log\LogLevel::ERROR, \Selyusize\EventsRouter\Service\Error\FailureFormatter $formatter = new \Selyusize\EventsRouter\Service\Error\FailureFormatter()): mixed

Parameters:

Parameter Type Description
$logger \Psr\Log\LoggerInterface
$level string
$formatter \Selyusize\EventsRouter\Service\Error\FailureFormatter

handle

Обработать ошибку слушателя.

public handle(\Throwable $error, \Selyusize\EventsRouter\Contract\Core\EventInterface $event, string $listener): void

Parameters:

Parameter Type Description
$error \Throwable исключение из слушателя или его middleware
$event \Selyusize\EventsRouter\Contract\Core\EventInterface событие, которое получил слушатель, с параметрами маршрута в атрибутах
$listener string класс упавшего слушателя