【发布时间】:2014-04-11 12:57:47
【问题描述】:
我正在尝试弄清楚如何获取有关未确认消息的信息。这些存储在哪里?在玩 celery inspect 时,似乎一旦消息得到确认,它就会处理,你可以跟踪状态。假设您有一个结果后端,那么您可以看到它的结果。但是从你应用延迟到它被确认它在一个黑洞中。
- noAcks 存储在哪里?
- 如何确定 noAcks 列表的“深度”?换句话说,有多少人,我的任务在列表中的哪个位置。
虽然我正在处理的问题与这里的问题不完全相关。
from celery.app import app_or_default
app = app_or_default()
inspect = app.control.inspect()
# Now if I want "RECEIVED" jobs..
data = inspect.reserved()
# or "ACTIVE" jobs..
data = inspect.active()
# or "REVOKED" jobs..
data = inspect.revoked()
# or scheduled jobs.. (Assuming these are time based??)
data = inspect.scheduled()
# FILL ME IN FOR UNACK JOBS!!
# data = inspect.??
# This will never work for tasks that aren't in one of the above buckets..
pprint.pprint(inspect.query_task([tasks]))
非常感谢您在这方面的建议和帮助。
【问题讨论】:
标签: rabbitmq celery django-celery