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

ErrorHandlerInterface

Что делать с ошибкой слушателя: записать в лог, отправить в мониторинг и т. п.

Вызывается для каждого упавшего слушателя сразу после его вызова.

final class ErrorHandler implements ErrorHandlerInterface
{
    public function handle(Throwable $error, EventInterface $event, string $listener): void
    {
        Logger::toFile('events/error', [
            'event' => $event->getName(),
            'listener' => $listener,
            'message' => $error->getMessage(),
        ]);
    }
}

$events->setErrorHandler(ErrorHandler::class);

  • Full name: \Selyusize\EventsRouter\Contract\Error\ErrorHandlerInterface

Methods

handle

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

public handle(\Throwable $error, \Selyusize\EventsRouter\Contract\Core\EventInterface $event, class-string<\Selyusize\EventsRouter\Contract\Core\ListenerInterface> $listener): void

Parameters:

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