获取 Celery worker 在 SQS 代理上处理的任务总数

问题描述

我一整天都在谷歌上搜索,我认为这是一件非常简单的事情,但没有发现如何实现以下目标:

我有几台机器运行 celery worker (celery worker -A app --pool=gevent --concurrency=10),AWS SQS 作为代理,Celery Beat 作为调度程序 (celery beat -A app --workdir=/tmp -S redbeat.RedBeatScheduler)。

我的印象是有些机器比其他机器处理的任务多得多,并且想要调试它。我的第一个想法是每 X 分钟查看一次工人处理的任务数量,但找不到简单的方法

根据 celery 文档,stats() 不会为 SQS 代理导出,我想避免必须检测我的 python 代码以手动将数据推送到某处(我没有时间序列数据库或仪表板将其可视化并且不想为此设置它,即使是机器上的日志文件也是不切实际的)。

由于我不熟悉 Celery,我正在寻找有关获得任务处理洞察的最简单/最快方法的建议。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...