Неудачные задания, помеченные как выполненные в laravel - PullRequest
0 голосов
/ 11 января 2019

Я использую Laravel 5.7 с php 7.3, Apache2, Redis для Laravel Horizon.

У меня возникает проблема, при возникновении ошибки задания никогда не сбиваются. Ex. Если я забуду добавить использование App \ Order; тогда в идеале это должно быть помечено как Сбой, но в настоящее время это происходит сейчас, что создает большую путаницу в том, что задания выполняются. Я получаю эту проблему с самого начала.

В дополнение к этому, задание не помечается как завершенное, даже если есть какая-либо другая ошибка, например ошибка вычисления (деление на 0) и отсутствие ключа для массива и т. Д.

1 Ответ

0 голосов
/ 11 января 2019

При запуске работника очереди необходимо указать максимальное количество попыток выполнения задания с помощью переключателя --tries в команде queue:work. Если вы не укажете значение для параметра --tries, задания будут выполняться бесконечно.

php artisan queue:work redis --tries=3

После того, как задание превысило указанное количество попыток, оно будет вставлено в таблицу базы данных failed_jobs.

Doc .

...