Неудачные задания, помеченные как выполненные в laravel

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

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

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


person Xyrin Technologies    schedule 11.01.2019    source источник


Ответы (1)


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

php artisan queue:work redis --tries=3

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

Документ.

person Prashant Pokhriyal    schedule 11.01.2019