Zabbix Agent编写自定义ping lost

在使用Zabbix监控网络主机丢包率的时候在Zabbix中有自带模版ping,当有些情况我们并不能直接使用或者不合适我们环境,这时候就需要我们手动写一个Agent

[root@office-test-op-monitor-01 zabbix_agentd.d]# more /etc/zabbix/zabbix_agentd.d/bin/ping.sh 
#!/bin/bash
#lost in % or rtt (ms)
case $2 in
lost)
    lost=`ping -q -c 10 -W 1 $1|grep 'loss'|awk -F'%' '{print $1}'|awk '{print $NF}'`
    echo $lost
    ;;
rtt)
    rtt=`ping -q -c 10 -W 1 $1  |grep rtt |awk -F '/' '{print $5}'`
    echo $rtt
    ;;
esac

调用ping.sh脚本($1是我们要ping的主机或者ip地址$2是定义lost)

[root@office-test-op-monitor-01 zabbix_agentd.d]# more /etc/zabbix/zabbix_agentd.d/ping.conf 
UserParameter=ping[*],/etc/zabbix/zabbix_agentd.d/bin/ping.sh $1 $

Shell中直接执行命令

[root@office-test-op-monitor-01 zabbix_agentd.d]# /etc/zabbix/zabbix_agentd.d/bin/ping.sh www.baidu.com lost
0
[root@office-test-op-monitor-01 zabbix_agentd.d]# systemctl restart zabbix_agentd 

Zabbix前台调用
Zabbix Agent编写自定义ping lost
Zabbix触发器构建
Zabbix Agent编写自定义ping lost

注:说一下我的环境,本地办公网络ipsec连接阿里云,阿里云ecs部署Zabbix Server监控本地办公网络一台Centos主机,Centos主机连接香港open***,故ping lost脚本在这监控香港服务器!

上一篇:Lost Cows


下一篇:she'l'l