laravel5.1 队列踩坑


timg (1).jpg

今天使用队列的时候,当队列执行失败需要捕获异常的时候,laravel提供了一个failed()方法,但是文档真是坑啊,按文档的用法,发现队列执行失败之后根本不会执行failed方法,放到AppServiceProvider里面那个全局方法也没用,各种google,还是没找到原因,突然发现我加个--tries参数试下,果然就可以了。

执行队列侦听器时加上 --tries参数即可,failed()方法只有在重试指定次数完成后才会调用failed()方法如:

php artisan queue:listen --queue=default,listeners --tries=3

顺便提一下:如果指定了队列名称必须在侦听器的参数上加上  --queue参数才行,不然没有指定的队列是不会运行的。

踩坑完毕。。。。


文档:https://d.laravel-china.org/docs/5.1/queues#failed-job-events


本文 暂无 评论

Top