当zabbix出现Zabbix agent on xxx s unreachable for 3 minutes时做一次tracert
有时候机房网络故障需要提供一份路由图给机房找问题,故想在zabbix出现访问客户端失败的时候自动做一次tracert并保存结果,请教一下王伟老师,可以这样实现:1、首先自己写个脚本,接受一个IP为参数,做路由并保存结果:
/usr/local/zabbix/scriptszabbix_tracert.sh
#!/bin/bash
ip=$1
active_time=`date +%Y%m%d%H%M%S`
/bin/tracert $ip > /usr/local/zabbix/scripts/${active_time}-$ip.txt 2>&1
2、zabbix中“管理”——“脚本”中添加刚刚写的脚本:http://blog.运维网.com/attachment/201306/112359897.png
{HOST.CONN} 就是传给脚本的IP参数
3、“配置”——“操作”中添加一个触发器:
http://blog.运维网.com/attachment/201306/112645611.png
http://blog.运维网.com/attachment/201306/112646318.png
operation type 中 选择执行命令
Target list 中选择当前host,表示要对当前host执行脚本
类型 就选刚刚在脚本中添加的
然后就OK了,接下来测试一下:
这时候发现报了一个错误:The specified type of tracerouting is allowed for superuser only
zabbix用户无权执行tracert命令,于是果断chmod u+s /bin/traceroute,问题解决,一切正常~~~
页:
[1]