Celery:更新任务名称以匹配注册的任务

时间:2019-02-26 00:32:26

标签: python django celery

我更改了我的celery任务所在的目录的名称(根据以下错误判断)导致我以后的计划任务出现了一些问题。

KeyError: 'utils.tasks.foo'
[2019-02-21 06:25:09,103: ERROR/MainProcess] Received unregistered task of type 'utils.tasks.foo'.
The message has been ignored and discarded.

此任务现已在services.tasks.foo下注册。我知道我计划了更多任务,并且可以在Redis代理中查看任务ID,但是当我使用app.control.inspect().scheduled()查看计划任务时,只有自将目录更改为{{1}以来已计划的任务}。

鉴于Celery无法识别我的旧任务,我该如何更新任务名称以使其与现在注册我的任务的路径相匹配?

1 个答案:

答案 0 :(得分:0)

这就是为什么最好明确命名任务(请参见docs)的原因,因为有时可能需要重新组织代码。同时,按照建议的那样重新创建旧任务可能是一个好主意。