我正在尝试删除错误的队列。
我尝试了以下内容:
档案:global.php
Queue::failing(function($connection, $job, $data)
{
// Delete the job
$job->delete();
});
但是当我的队列失败时,就像这样:
public function fire($job, $data){
undefined_function(); // this function is not defined and will trow a error
}
然后由于某些原因不删除作业。
有什么想法吗?
答案 0 :(得分:4)
从他们的user manual部分检查运行尝试次数:
如果在处理作业时发生异常,它将自动释放回队列。
我认为您需要将最大尝试次数设置为1,因此第一次出错时作业将失败。
php artisan queue:listen --tries=1
答案 1 :(得分:1)
你可以阻止你的工作抛出异常
public function handle()
{
try {
//your code here
}catch (\Exception $e){
return true;
}
}