php - Laravel - 作业发送后如何获取 Redis 作业 ID?

标签 php laravel redis laravel-5.2

当我调用它时:

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

关于php - Laravel - 作业发送后如何获取 Redis 作业 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51453993/

相关文章:

'hset' 期间的 R 库 rredis 附加虚假字符串

php - 使用下拉列表选择 php mysql 数据库的结果创建新的下拉列表

php - 子文件夹的路径令人困惑

Laravel 完整日历

php - Ratchet 与 Laravel

redis - HSET 如果 key 存在

java - 使用 JedisPool 的 Redis 连接池变得过于冗长

php - MySQL根据月份选择数据并将它们加在一起(最好在ZEND中)

php - 将一行 Perl 代码翻译成 PHP

php - 覆盖 Laravel Spark Controller 方法