如何通过Redis CLI查看bee-queue中待处理的JSON任务内容?
bee-queue Redis队列任务内容查询方法
存储结构说明
bee-queue的队列数据按以下规则存储在Redis中:
bq:[队列名]:waiting为List类型,仅存储待处理任务的ID,不保存实际业务数据bq:[队列名]:jobs为Hash类型,所有任务的完整JSON序列化数据都存在该哈希表中,哈希的field对应任务ID,value为序列化后的任务JSON字符串get bq:myqueue:waiting返回WRONGTYPE错误的原因是:get命令仅适用于String类型的key,无法操作List类型的key
具体查询步骤
- 先获取所有待处理任务的ID
执行Redis命令:
LRANGE bq:myqueue:waiting 0 -1
命令返回值为待处理任务ID列表,例如返回["1","2"]表示当前有ID为1、2的两个待处理任务。
- 查询单个任务的实际内容
拿到任务ID后,执行HGET命令查询对应ID的任务数据,例如查询ID为1的任务:
HGET bq:myqueue:jobs 1
返回值就是你存入的JSON格式任务数据。
- 批量查询多个待处理任务内容
如果需要一次性查多个ID的任务,使用HMGET命令,例如同时查ID1和ID2的任务:
HMGET bq:myqueue:jobs 1 2
- (调试场景可选)查询所有状态的任务
如果需要查看队列中所有状态(待处理、处理中、成功、失败)的任务,直接执行HGETALL命令:
HGETALL bq:myqueue:jobs
注意:该命令会遍历整个哈希表,任务量较大时会阻塞Redis,仅建议本地调试时使用,禁止在生产环境执行。
内容的提问来源于stack exchange,提问作者d512
相关产品推荐
相关产品推荐

