向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第三方库


热门话题
java操作数组上的字符串   java JAXB内容未实例化   图形在Java中如何绘制垂直居中的字符串?   java Apache Ant:使用Junit时出现NoClassDefFoundError   java无法从服务器上运行perl脚本   如何在java中沿树进行预排序遍历,并打印0和1以对应每个节点上的特定字符?   java如何创建。p12文件?   java线程访问无效   java只匹配命名空间中的XML节点,而不知道NS前缀   从java获取2d arraylist元素   数组Java动态集合对象   java Xpath通过通配符或布尔运算查找以相同名称开头的节点?   java注释元素类型   java在中看不到Super()。反编译后的类文件