小编典典

如何按任务名称检查和取消Celery任务

redis

我将Redis作为经纪人使用Celery(3.0.15)。

有没有一种简单的方法来查询Celery队列中存在的具有给定名称的任务数?

并且,作为后续措施,是否可以取消Celery队列中存在的所有具有给定名称的任务?

我已经看过《监控和管理指南》,在那儿看不到解决方案。


阅读 868

收藏
2020-06-20

共1个答案

小编典典

# Retrieve tasks
# Reference: http://docs.celeryproject.org/en/latest/reference/celery.events.state.html
query = celery.events.state.tasks_by_type(your_task_name)

# Kill tasks
# Reference: http://docs.celeryproject.org/en/latest/userguide/workers.html#revoking-tasks
for uuid, task in query:
    celery.control.revoke(uuid, terminate=True)
2020-06-20