zabbix中需要自定义添加对rabbitmq的监控,以及时响应rabbitmq出现的问题,所以在zabbix_agented.conf中添加了一项
#UserParameter=rabbitmq,rabbitmqctl status &> /dev/null && echo ‘0‘ || echo ‘1‘
之后重启agent测试
#/usr/local/zabbix/sbin/zabbix_agentd -t rabbitmq
显示结果为
rabbitmq [t|0]
然而在server断测试
#./zabbix_get -s "IP" -k rabbitmq
结果获得的返回值为
1
agent端和server端测试的结果不一样。
经过分析得出,server端在获取agent返回值时,使用的是zabbix用户,而rabbitmqctl命令只有root和rabbitmq用户可以执行,所以导致,无论怎样server端获取的值都为“1”。所以更换了其他zabbix用户可以执行的命令来进行监控,之后,agent端和server端的测试结果就正常了。
结论:以后,在zabbix中添加自定义监控项时,无论是直接添加命令,还是添加脚本,都需要注意,所有的命令zabbix用户必须要有执行权限。
本文出自 “博乐檬” 博客,请务必保留此出处http://bolemon.blog.51cto.com/10275874/1834298
原文地址:http://bolemon.blog.51cto.com/10275874/1834298