Php 调度失败时如何处理错误?

Php 调度失败时如何处理错误?,php,laravel,queue,amazon-sqs,Php,Laravel,Queue,Amazon Sqs,我使用Laravel、queues和SQS作为队列驱动程序 这是感兴趣的代码部分: try{ $teReq = new MyRequestPayload($jsonData); $jobInstance = new ProcessQueuedSendRequestJob($payload); dispatch($jobInstance); }catch(Exception $e){ Log::info("========================

我使用Laravel、queues和SQS作为队列驱动程序

这是感兴趣的代码部分:

try{
    $teReq       = new MyRequestPayload($jsonData);
    $jobInstance = new ProcessQueuedSendRequestJob($payload);
    dispatch($jobInstance);
}catch(Exception $e){
    Log::info("==================================================");
    Log::error($e->getMessage());
}
错误可能来自以下行:

  dispatch($jobInstance);
在我的例子中,如果应用程序由于某种原因无法连接到SQS,就会发生这种情况

我在日志中得到以下错误,它不是被捕获的

Error executing "SendMessage" on "https://sqs.****.amazonaws.com/*****/app-dev"; 
AWS HTTP error: Client error: `POST https://sqs.****.amazonaws.com/*****/app-dev` 
resulted in a `403 Forbidden` response: <?xml version="1.0"?>
<ErrorResponse xmlns="http://queue.amazonaws.com/doc/2012-11-05/"><Error><Type>Sender</Type><Code>S (truncated...)  
SignatureDoesNotMatch (client): Signature expired: 20170906T161652Z is now earlier than 20170907T063633Z (20170907T065133Z - 15 min.)
而且。。。这不是关于解决这个问题/错误本身,而是关于在分派作业后捕获任何可能的错误。以便发送警报,告知我的队列应用程序无法保存邮件


我想这并没有被捕获,因为底层的aws php sdk并没有抛出异常,只是在事后记录了一个错误

这个问题运气好吗@koalaok