【发布时间】:2020-08-20 15:07:42
【问题描述】:
如果 MySQL 出现故障,是否有任何备用选项可以将 Failed Queue Jobs 记录到文件中?
我试试
namespace App\Providers\AppServiceProvider;
function register()
Queue::failing(function (JobFailed $event) {
if($event->exception instanceof \PDOException){
$data = [
'code' => $event->exception->getCode(),
'connectionName' => $event->connectionName,
'getQueue' => $event->job->getQueue(),
'getRawBody' => $event->job->getRawBody(),
'exception' => (string)$event->exception,
];
\App\Repositories\FailedJobMysqlDown::set($data);
}
});
但是这个检查工作的原因下降了, 我想捕获插入 failed_jobs 异常
[2002] No such file or directory (SQL: insert into `failed_jobs` (`connection`, `queue`, `payload`, `exception`, `failed_at`) values (redis, superhigh, {"ty................
有什么想法吗?
谢谢
【问题讨论】:
-
failed_jobs 是您的错误表明您缺少迁移的表
-
您应该查看Exception Handler。
标签: laravel laravel-6 laravel-7