场景
- lumen 开发接口,定义了几个Job,所以需要对一场进行监控, 采用捕捉事件 && 微信预警
参考文档
解决
- 全局捕捉Job Failed事件
- 实现微信预警
全局捕捉
public function boot()
{
// 监听JOB异常
$this->listenJobFailed();
}
/**
* 监听JOB异常
*/
private function listenJobFailed()
{
Queue::failing(function (JobFailed $event) {
$msg_error = "Job : " . $event->job->resolveName() . PHP_EOL .
"Exception : " . $event->exception->getMessage() . PHP_EOL .
"queue : " . $event->job->getQueue() . PHP_EOL .
"connection : $event->connectionName";
$this->wechatException($msg_error);
});
}