我可以单独查看和删除Celery / RabbitMQ任务吗?

时间:2017-08-28 10:59:58

标签: django rabbitmq celery django-celery celerybeat

我正在运行Django + Celery + RabbitMQ。在修改了一些任务名称之后,我开始获得“未注册的任务”KeyErrors,即使在从Django Celery Beat的Periodic任务表中删除具有此键的任务并重新启动Celery工作程序之后。

结果是Celery / RabbitMQ tasks are persistent。我最终通过reimplementing the legacy tasks as dummy methods解决了这个问题。

将来,我不想清除队列,重启工作人员或重新实现遗留方法。相反,我想检查队列并单独删除任何遗留任务。这可能吗? (最好是在Django管理界面的上下文中。)

1 个答案:

答案 0 :(得分:0)

芹菜inspect可能有所帮助

查看活动队列:

celery -A proj inspect active_queues

终止流程:

celery -A proj control invoke process_id

查看所有可用的检查选项:

celery inspect --help