尝试运行celeryd_multi时出现属性错误

2024-05-23 17:07:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我在尝试启动celeryd multi时得到了一个AttributeError: 'module' object has no attribute 'getrlimit',可以手动启动(python manage.py celeryd_multi...),也可以通过init.d作为守护进程启动。在

  • 我可以用python manage.py celeryd手动启动celeryd fine
  • CELERYD_MULTI从/etc/default/celeryd中取出会导致它崩溃,并出现以下错误:usr/bin/python: No module named celery.__main__; 'celery' is a package and cannot be directly executed
  • 手动启动celeryd_multi也会导致“getrlimit”属性错误

我的/etc/default/celeryd文件如下所示:

CELERYD_NODES="w1"
CELERYD_CHDIR="/code/project"

CELERYD_MULTI="python $CELERYD_CHDIR/manage.py celeryd_multi"

CELERYCTL="$CELERYD_CHDIR/manage.py celeryctl"

CELERYD_OPTS="--time-limit=300 --concurrency=8"

CELERY_CONFIG_MODULE="celeryconfig"

CELERYD_LOG_FILE="/var/log/celery/celeryd.log"
CELERYD_PID_FILE="/var/run/celery/celeryd.pid"

CELERYD_USER="celery"
CELERYD_GROUP="celery"

export DJANGO_SETTINGS_MODULE="project.settings"

下面是堆栈跟踪:

^{pr2}$

Tags: pyprojectdefaultmanage错误etc手动multi