- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 celery worker
在命令行加载配置文件:
celery worker --config=my_settings_module
这似乎不起作用。 celery worker 启动并使用其默认设置(包括假设在 localhost:5672 有可用的 RabbitMQ 服务器)在我的配置中,我想将 celery 指向不同的地方。当我将配置文件中的 amqp 设置更改为某些内容时,Celery 似乎并不在意。它仍然显示默认的 RabbitMQ 设置。
我也试过一些假的
celery worker --config=this_file_does_not_exist
而 celery 再一次不在乎。 worker 启动并附加到默认的 RabbitMQ。它甚至没有查看 --config 设置
我读到了 Celery 是如何延迟加载的。我不确定这与此有什么关系。
如何让 celery worker 遵守 --config 设置?
最佳答案
如果您提供了一些无效的模块名称或不在 PYTHONPATH
中的模块名称,比如 celery worker --config=invalid_foo
,celery 将忽略它。
您可以通过创建一个简单的配置文件来验证这一点。
$ celery worker -h
--config=CONFIG Name of the configuration module
正如 celery worker 帮助中提到的,你应该通过配置模块。否则会引发错误。
如果你只是跑
celery worker
它将启动 worker 并且它的输出将被着色。
在同一目录中,使用此行创建一个名为 c.py
的文件。
CELERYD_LOG_COLOR = False
现在运行
celery worker --config=c
它将启动 worker 并且它的输出将不着色。
如果您运行 celery worker --config=c.py
,它会引发错误。
celery.utils.imports.NotAPackage: Error: Module 'c.py' doesn't exist, or it's not a valid Python module name.
Did you mean 'c'?
关于python - 如何让 Celery 从命令行加载配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35674946/
我是一名优秀的程序员,十分优秀!