我正在使用超级用户来将celery作为守护程序运行,但这给了我error ImportError: No module named tasks worker
。我可以在没有监督的情况下从shell运行它。我的超级用户配置文件如下:
[program:celery]
directory=/home/yongfengzhang/videomaker
environment=PYTHONPATH="/home/yongfengzhang/videomaker:/home/yongfengzhang/videomaker/videomaker:$PYTHONPATH",DJANGO_SETTINGS_MODULE="videomaker.settings"
;command=/home/yongfengzhang/Envs/videomake/bin/celery -A "tasks worker" --loglevel=INFO --concurrency=4
command=celery -A "tasks worker" --loglevel=INFO --concurrency=4
process_name=%(program_name)s ; process_name expr (default %(program_name)s)
numprocs=1
user=yongfengzhang ; setuid to this UNIX account to run the program
stdout_logfile=/home/yongfengzhang/logs/celery/celery.log
stderr_logfile=/home/yongfengzhang/logs/celery/celery.err
autostart=true
autorestart=true
因此,在下面/home/yongfengzhang/videomaker
我tasks.py
定义了celery实例和任务功能(此处未显示):
app = Celery('tasks', backend='redis://localhost', broker='amqp://myuser:bloomsky@localhost:5672/myvhost')
在此文件夹(~/videomaker
)中直接运行celery时,一切都很好。这Envs/videomake
是我的virtualenv所在的位置。__init__.py
文件夹中有一个。任何输入将不胜感激。非常感谢。
我只是发现这里出了什么问题。您不能使用双引号将参数分组。请执行以下操作:
command=/home/yongfengzhang/Envs/videomake/bin/celery -A tasks worker --loglevel=INFO --concurrency=4
参数tasks worker
不应该用双引号引起来。谢谢。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句