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

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

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

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

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

回答:

# 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)

以上是 如何按任务名称检查和取消Celery任务 的全部内容, 来源链接: utcz.com/qa/427751.html

回到顶部