【发布时间】:2019-04-17 14:37:29
【问题描述】:
我想弄清楚如何处理失败的工作。所以在我的 Job 课上,我基本上有这样的东西
public function handle()
{
try {
$someService = new SomeService($);
$success = $someService->makeApiRequest();
if($success) {
//do something
} else {
//trigger failed
}
} catch (\Exception $e) {
$this->failed($e);
}
}
public function failed(Exception $exception)
{
//Log information
}
这样做是调用一个发出 API 请求的服务类。该类根据 API 调用是否成功返回 true 或 false。
目前,我只是让 API 方法返回 false。这应该意味着作业失败。但是,失败的函数并没有被调用,就 Laravel 而言,作业被处理了。
如果我没有异常,如何手动触发失败的函数?
谢谢
【问题讨论】:
-
您是将作业推送到队列还是同步运行?