繁体   English   中英

Laravel 队列失败的作业

[英]Laravel Queue Failed Jobs

当作业失败时,我试图从其他表中记录一些数据。 它在失败的作业表中效果很好,但每次作业失败时我都无法让Queue::failing(function($connection, $job, $data)工作。我确实尝试将它放在global.php但没有运气。

另一个问题是$job返回什么? 一个对象还是只是工作 ID?

您应该调用 queue:work with --tries 参数,例如:

$ php artisan queue:work sqs --tries=1

没有这个参数,你的工作永远不会失败。

但请记住配置您失败的表。

1) 创建迁移文件:

$ php artisan queue:failed-table

2) 运行 migrate 创建表

$ php artisan migrate

3) 在 queue.php 中,您需要配置“失败”表。 前任:

'failed' => array(
    'database' => 'pgsql', 'table' => 'failed_jobs',
),

现在,当作业失败时,它会将其插入到failed_jobs表中。

只需运行php artisan queue:failed即可获取失败列表。

处理global php 它导致错误,只是更改了以下内容:

Queue::failing(function($connection, $job, $data)

到:

Queue::failing(function($connection, $job)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM