监控Celery,我该使用什么?

6 投票
2 回答
13475 浏览
提问于 2025-04-16 16:32

我在使用Django、Celery和Django-Celery。我想监控我的任务的状态和结果,但我有点搞不清楚该怎么做。

我是不是应该用 ./manage.py celeryev./manage.py celerymon./manage.py celerycam?还是要运行 sudo /etc/init.d/celeryevcam start

2 个回答

6

我知道这个问题已经很老了。不过对于未来的访问者来说,Celery Flower 是一个很棒的工具。它也得到了 Celery 的推荐。下面是一些来自上面链接的酷炫功能:

实时监控使用 Celery 事件

  • 任务进度和历史记录
  • 能够显示任务的详细信息(参数、开始时间、运行时间等等)
  • 图表和统计数据

远程控制

  • 查看工作进程的状态和统计信息
  • 关闭和重启工作进程
  • 控制工作进程的数量和自动扩展设置
  • 查看和修改工作进程所消费的队列
  • 查看当前正在运行的任务
  • 查看已安排的任务(预计时间/倒计时)
  • 查看已保留和已撤销的任务
  • 应用时间和速率限制
  • 配置查看器
  • 撤销或终止任务

代理监控

  • 查看所有 Celery 队列的统计信息
  • 队列长度图表

HTTP API

基本认证、GitHub OAuth2 和 Google OpenID 认证

18

运行:

./manage.py celeryd -E
./manage.py celerycam

首先,这个命令会启动一个工作进程,并且开启了事件功能。

现在你可以在Django的管理界面中找到任务的结果。确保你的INSTALLED_APPS里有djcelery。如果你想查看任务的状态,还可以使用celerymon。

撰写回答