参考文档
http://blog.csdn.net/qq_29778131/article/details/52537288?ticket=ST-77459-cUGNcZF1BJBtNuZoZe1i-passport.csdn.net #python脚本

一,实现功能
实现自动发现rabbitmq queue,并监控单个队列消费情况以及集群情况总体情况:
1,单个队列 'messages_ready', 'messages_unacknowledged'数量统计
图形名称: Rabbitmq {#RABBITMQQUEUE} status
2,单个队列生产消费速率:'deliv er_get ’, 'publish'
图形名称: Rabbitmq {#RABBITMQQUEUE} rate of produce and consum
3,集群总的速率:’ack', 'deliver', 'deliver_get', 'publish'
图形名称: Rabbitmq all rate of method
4,集群所有队列 'messages_ready', 'messages_unacknowledged' 数量统计
图形名称: Rabbitmq all queue total messages
5,集群镜像队列同步统计
默认值是1,当有队列进行同步时候,数量加 1,并触发报警;
Rabbitmq all of queues unsynchronised (default 1)

二,配置流程

http://down.51cto.com/data/2369790 #配置模板

1,rabbitmq中增加账号,并在 auth.sh 文件中配置账号密码;
2,zabbix配置文件加入
UnsafeUserParameters=1
UserParameter=discovery.rabbitmq_queues, sh /etc/zabbix/rabbitmq/rabbitmq_main.sh list
UserParameter=rabbitmq_queues_stats[], sh /etc/zabbix/rabbitmq/rabbitmq_main.sh queue $1 $2
UserParameter=rabbitmq_method_stats[
], sh /etc/zabbix/rabbitmq/rabbitmq_main.sh method $1
UserParameter=rabbitmq_cluster_sync, sh /etc/zabbix/rabbitmq/rabbitmq_main.sh sync
3,脚本文件
rabbitmq文件夹拷贝到 /etc/zabbix/ 目录下,并配置所有者 zabbix
4, 配置正则表达式
名称:Rabbitmq Queues Discovery 值:^[0-9]{8} [结果为假]
5,导入模板
6,zabbix server 测试
zabbix_get -s X.x.x.x -p 10050 -k "discovery.rabbitmq_queues"

三,监控效果截图
zabbix自动发现rabbitmq
zabbix自动发现rabbitmq

zabbix自动发现rabbitmq