当lai呼叫在laravel工作失败时

时间:2018-01-25 14:32:52

标签: laravel

我有一个后台工作,从谷歌adwords获取数据。现在我的问题是我使用后台工作程序获取数据。

当响应为空时,最好的办法是有什么方法可以重新运行或者最好的方法是什么?

public function handle()
{
    $googleService = new GoogleAds;

    $data = $googleService->report()
        ->from('CRITERIA_PERFORMANCE_REPORT')
        ->during('20170101', '20170210')
        ->select('CampaignId, Id, Criteria, IsNegative, Clicks, Ctr, Cost, Labels')
        ->getObject();

    if(!isset($data->result) || empty($data->result)){

      //what to do when no data back ? 
    }
    $this->transform->response($data);
}

1 个答案:

答案 0 :(得分:0)

您可以抛出异常,然后它将返回到您的队列,并且工作人员将尝试再次执行它。

启动工作人员时,会有一个--tries参数,指示在转到表failed_jobs之前尝试执行的时间。

您可以在official documentation中查看参考。