我遇到的问题以前曾多次出现,但是以前的答案似乎都没有帮助我。
我正在通过Redis后端运行Celery(通过Docker / Kubernetes)。我正在使用以下命令:
celery worker --uid 33 -A finimize_django --loglevel=DEBUG -E
(我已经将其设置为现在调试)
我正在使用celery==4.3.0
和redis==3.2.1
。
每当我运行celery -A app_name status
时,我都会得到:
Error: No nodes replied within time constraint.
奇怪的是芹菜似乎运转良好。我可以看到正在处理的任务,即使我的monitor
Redis东西似乎已成功运行。几个月来,这种情况在生产中也一直运行良好,直到上周才开始发生。
这是一个问题,因为我的活动探测器由于此错误消息而杀死了吊舱。
如何调试基本问题?日志输出中没有任何错误。
谢谢!
答案 0 :(得分:1)
我有相同的问题,或者至少非常相似。我已经通过将kombu
固定到版本4.6.3
来修复它在我的项目中。根据github上的this issue芹菜,这是4.6.4
的问题。要调试的确很阴险,但是希望对您有所帮助!
答案 1 :(得分:1)
正如在第一个答案中所建议的那样,以及github上将kombu降级至4.6.3本身的问题还不够,我不得不稍微更改一下命令并使用此命令..:
timeout 120s celery inspect ping -A run:celery -b ${REDIS_URL} -d celery@$HOSTNAME
注意redis URL和主机名。