Как обрабатывать сбойные задания в очереди уведомлений - PullRequest
0 голосов
/ 25 сентября 2019

При использовании уведомлений в очереди:

class MyNotification extends Notification implements ShouldQueue
{

    use Queueable;
}

Как обрабатывать сбойные задания?Если бы я отправил электронное письмо / уведомление через класс задания, я мог бы использовать метод с ошибкой:

public function failed(Exception $exception) {

  Log::debug('MyNotification failed');

}

Однако метод с ошибкой в ​​уведомлении не работает

Ответы [ 2 ]

0 голосов
/ 27 сентября 2019

Caddy DZ верен, есть метод handle () для уведомлений: https://github.com/illuminate/notifications/blob/master/SendQueuedNotifications.php#L92

Моя проблема не связана с импортом класса исключения, код должен быть:

public function failed(\Exception $exception) {

  Log::debug('MyNotification failed');

}
0 голосов
/ 25 сентября 2019

Вы должны проверить документацию Laravel здесь .

Например, в вашем AppServiceProvider вы можете добавить:

public function boot()
{
    Queue::failing(function (JobFailed $event) {
        // $event->connectionName
        // $event->job
        // $event->exception
    });
}

Обработка невыполненного задания не является ответственностьюуведомления, кроме очередей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...