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();