向zabbix发送任务执行度量

celery-zabbix的Python项目详细描述


向zabbix发送任务执行度量:启动了多少个任务 已成功完成或失败,以及仍有多少任务在 队列(仅支持Broker Redis)。对Zabbix-3.0进行测试。

灵感来自https://gitlab.com/kalibrr/celery-prometheus

用法

  • 运行bin/celery zabbix --zabbix-nodename myhost.example.com --zabbix-server zabbix.example.com。 (或者,您可以传递--zabbix-agent-config=/etc/zabbix/zabbix_agentd.conf,然后从中读取server+nodename的值。)
  • 导入相应的Zabbix Template以设置匹配项。

项目

以下项目将每60秒发送一次(通过--dump-interval=x进行配置):

  • 芹菜.task.started
  • 芹菜.task.succeeded(带触发器{$WARN_TASKS_FAILED}
  • 芹菜.task.failed
  • 芹菜.task.retried

从监控过程开始算起, 所以您需要在zabbix服务器上将它们作为delta处理。

  • 芹菜.task.queuetime(仅当task_send_sent_event已启用时)
  • 芹菜.task.runtime

这些是中值,使用项目类型“numeric(float)”。

队列长度

如果通过--queuelength-interval=x,则每隔x秒将检查队列长度(注意:这仅适用于作为代理的redis),并且还将发送以下项:

  • 芹菜.队列[myqueuename]

这些是测量值,即它们包含每次检索时的长度 时间,所以他们可以上下移动。

  • 芹菜.discover.queues

这是一个自动发现项,连同Zabbix Template这将为每个队列创建一个项和触发器。在主机上,创建{$WARN_QUEUE_LENGTH:myqueuename}格式的宏来确定触发阈值。

运行测试

使用toxpy.test。可能安装tox(例如,通过pip install tox) 然后简单地运行tox

芹菜的变化

1.0.4(2019-06-26)

  • 允许使用代理配置文件并仍重写命令行上的值 (彼得·雷德克里夫的补丁)

1.0.3(2018-03-23)

  • 使用后关闭用于队列长度检查的redis连接
  • 捕获转储统计信息中的异常并检查队列长度的线程

1.0.2(2018-03-21)

  • 对丢失的task.runtime进行防御

1.0.1(2018-03-09)

  • 修复代理配置解析中的输入错误

1.0.0(2018-03-06)

  • 初始版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Google应用程序引擎FreeMarker模板java。安全AccessControlException   在Java中,空字符串(“”)如何存储在内存中?   java如何使用PUT进行创建   java无法构造com的实例。谷歌。云数据存储。钥匙   Java递归中的堆栈溢出错误   java通过结构化设计模式重构冗余代码   javascript使用Selenium IDE 2.9.1上传文件   JAVAutil。扫描仪在Java中将文本文件加载到对象中   这个JAVA程序的时间复杂度是多少   java Springboot+tomcat+ssh=连接链路故障   矢量Java不安全操作   用于Java不同生成代码的协议缓冲区gRPC protobuf生成器   java OSGi为什么我的包命名为“unknown0.0.0”和MANIFEST。MF文件被覆盖了吗?   java日期保持为空(Android)   使用stax解析器java解析xml   java有一种方法可以在运行时确定对象是否是使用Lambdaj创建的。关于()方法?