我正在以redis为经纪人经营芹菜和芹菜花。一切正常启动,工人可以从redis中找到工作,芹菜工人成功完成工作。
我遇到的问题是芹菜花web UI中的Broker选项卡没有显示Redis的任何信息。我知道Redis的url是正确的,因为它与celeryd使用的url相同。我还知道芹菜队列中有信息,因为我可以通过redis-cli手动确认。
我想知道芹菜花是否正在尝试监视Broker选项卡中的另一个队列?我在花文档中没有看到任何要覆盖或确认的设置。我很乐意根据要求提供更多信息,但我不确定什么是相关的。
原来我需要用broker
和broker_api
命令行参数启动Celery Flower:
celery flower --broker=redis://localhost:6379/0 --broker_api=redis://localhost:6379/0
希望这能帮助其他人。
对于AMQP,这是一个示例。
/usr/bin/celery -A app_name --broker=amqp://user:pw@host//vhost --broker_api=http://user:pw@host:host_port/api flower
broker_api是带有/api 的rabbitmq-web-ui端点
rabbitmq-plugins enable rabbitmq_management
那是对我的帮助http://flower.readthedocs.org/en/latest/config.html?highlight=broker_api#broker-api
RabbitMQ也面临同样的问题。以下是它的工作原理:
rabbitmq:
image: rabbitmq:3-management
flower:
image: mher/flower
ports:
- 5555:5555
command:
- "celery"
- "--broker=amqp://guest@rabbitmq:5672//"
- "flower"
- "--broker_api=http://guest:guest@rabbitmq:15672/api//"
depends_on:
- rabbitmq
经纪人;将显示其他选项卡。