Laravel - 如何在作业派发后获取redis作业ID?
Laravel - phow to get redis job ID after job is dispatched?
当我调用它时:
$data = \Redis::lrange('queues:high', 0, -1);
print_r($data[0];);
我看到了这个:
{
"job": "Illuminate\Queue\CallQueuedHandler@call",
"data": {
"commandName": "App\Jobs\SyncProduct",
"command": "..."
},
"id": "CXAfF3aFL6CT06X0sI1veXADgv8ipqUi",
"attempts": 1
}
如何从 laravel 代码、作业内部或调度程序对象中获取此作业 ID (CXAfF3aFL6CT06X0sI1veXADgv8ipqUi)?
您可以尝试从作业内部访问基础作业:
// for a job using the `InteractsWithQueue` trait
$this->job->getJobId();
当我调用它时:
$data = \Redis::lrange('queues:high', 0, -1);
print_r($data[0];);
我看到了这个:
{
"job": "Illuminate\Queue\CallQueuedHandler@call",
"data": {
"commandName": "App\Jobs\SyncProduct",
"command": "..."
},
"id": "CXAfF3aFL6CT06X0sI1veXADgv8ipqUi",
"attempts": 1
}
如何从 laravel 代码、作业内部或调度程序对象中获取此作业 ID (CXAfF3aFL6CT06X0sI1veXADgv8ipqUi)?
您可以尝试从作业内部访问基础作业:
// for a job using the `InteractsWithQueue` trait
$this->job->getJobId();