Я создал цепочку заданий на развертывание в Laravel, следуя документации:
https://laravel.com/docs/5.6/queues#job-chaining
Из документов (аналогично моему коду):
ProcessPodcast::withChain([
new OptimizePodcast,
new ReleasePodcast
])->dispatch();
Есть ли способ отследить, началась ли цепочка вакансий полностью и полностью?
Я думаю, что есть возможность всегда начинать цепочку с beforeDeployment
работа и afterDeployment
работа. Так как цепь обрывается при возникновении ошибки и afterDeployment
не будет достигнуто, это кажется возможным.
Есть мысли по поводу такого подхода или что-то проще сделать?
Я предполагаю, что мой подход позволил бы мне установить слушателя так:
https://laravel.com/docs/5.6/queues#job-events
Ура!
Честно говоря, если бы я реализовал это — у меня был бы случай, если успех PodcastWasReleased
который уведомил меня, но я бы подключился к Queue::failing()
слушатель (https://laravel.com/docs/5.6/queues#failed-job-events) чтобы снова запустить событие PodcastFailedToRelease
,
Вы можете передать задание, которое не удалось, в событие, чтобы дать краткое представление о том, что произошло, а также трассировку стека, доступную в объекте JobFailed.
Это помогает? Может быть, это, по крайней мере, поставит вас на другой путь.
Дайте мне знать, как вы поживаете 🙂
Других решений пока нет …