运行status命令时,我收到以下错误:-
Am using rabbitmq as the messaging broker我正在关注这个blog
sudo /etc/init.d/celeryd status
Error: No nodes replied within time constraint如何调试此错误?
我也检查过这个问题。那里的答案没有帮助。
django/celery - celery status: Error: No nodes replied within time constraint
编辑:-
在检查了芹菜节拍的日志后,我发现了以下错误
celerybeat raised exception <class 'gdbm.error'>: error(13, 'Permission denied')发布于 2012-12-28 01:01:47
这可能是由于celery对celerybeat-schedule文件没有写权限造成的。您链接的文档显示了配置为使用/var/run/celerybeat-schedule作为celery节拍调度文件的celery。
您的进程是否具有该文件的写入权限?如果该目录归root所有(正如它应该拥有的那样),并且您的进程是以root用户以外的任何身份运行的,则可能会导致权限被拒绝错误。
检查您的权限是否正确,然后尝试删除该文件,然后重新启动所有内容。
发布于 2015-01-21 15:25:17
使用以下命令查找问题:
C_FAKEFORK=1 sh -x /etc/init.d/celeryd start这通常是因为您的源项目中存在问题(权限问题、语法错误等)。
就像芹菜文档中提到的:
如果worker以“OK”开始,但几乎立即退出,并且日志文件中没有任何内容,则可能存在错误,但由于守护程序的标准输出已经关闭,因此您将无法在任何地方看到它们。对于这种情况,您可以使用C_FAKEFORK环境变量跳过守护进程步骤
祝好运
来源:Celery Docs
发布于 2017-01-10 00:52:24
我也有同样的问题。重启rabbitmq修复了这个问题:
sudo systemctl restart rabbitmq-server奇怪的是,我需要等待至少100秒。对我来说,我认为是磁盘问题。
https://stackoverflow.com/questions/14025279
复制相似问题