github下载开源脚本:https://github.com/jasonmcintosh/rabbitmq-zabbix
运行环境:python2.6.6
脚本分析:
rabbitmq-zabbix/scripts/rabbitmq/ 下有这些文件
api.py --python脚本,利用rabbitmq的web api,获取监控的相关数据
list_rabbit_nodes.sh --shell脚本,将参数传给api,获取节点数据
list_rabbit_queues.sh --shell脚本,将参数传给api,获取队列数据
list_rabbit_shovels.sh
rabbitmq-status.sh --shell脚本,将参数传给api,获取状态数据
..rab.auth --参数设置,设置登陆rabbitmq的相关参数
需要更改的api.py,将rabbimq的登陆信息写死:
api = RabbitMQAPI(user_name = 'admin', password = 'aedkckslafadsfasdfasdfasddadf9989g', host_name = '119.*.*.*',
port = 15672, conf = '/etc/zabbix/zabbix_agentd.conf', senderhostname = None, protocol = 'http')
将zabbix-rabbitmq.conf放在/etc/zabbix/zabbix_agentd.d中,监控的项目如下
UserParameter=rabbitmq.discovery_queues,/usr/local/sbin/list_rabbit_queues.sh
UserParameter=rabbitmq.discovery_shovels,/usr/local/sbin/list_rabbit_shovels.sh
UserParameter=rabbitmq.discovery_nodes,/usr/local/sbin/list_rabbit_nodes.sh
UserParameter=rabbitmq[*],/usr/local/sbin/rabbitmq-status.sh $1 $2 $3
最后将rabbitmq.template.xml导入zabbix的模板中
所有评论(0)