http://blog./uid-26978448-id-3411107.html 2012
nagios-plugins自带有一个check_ping二进制文件可以检测丢包率和ping的回应值,但由于领导要求所有监控脚本改用python写,所以这里用python重新写了一个。代码如下: #cat check_ping.py 点击(此处)折叠或打开
#easy_install ping 安装成功后即可正常运行本脚本。 直接执行脚本不加参数可以查看脚本用法: #python check_ping.py Usage: check_python_ping.py 实例: 由于nagios程序是由nagios用户执行,使用该脚本的ping模块会报错,需要给nagios用户开放sudo权限: #visudo 添加以下内容 nagios ALL=(ALL) NOPASSWD: /usr/local/nagios/libexec/check_ping.py commands.cfg配置: ##### 飞信机器人的配置 ###### define command { command_name notify-service-by-fei command_line LD_LIBRARY_PATH=/usr/local/fetion /usr/local/fetion/fetion --mobile=158******** --pwd=123456 --to=$CONTACTPAGER$ --msg-type=1 --msg-utf8="**Nagios**\nNotification Type: $NOTIFICATIONTYPE$\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\nDate/Time: $LONGDATETIME$\nAdditional Info:\n$SERVICEOUTPUT$" } ##### 定义check_python_ping命令 ##### define command { command_name check_python_ping command_line sudo $USER1$/check_ping.py $HOSTADDRESS$ $ARG1$ $ARG2$ } services.cfg配置: define service{ use service01 host_name test service_description ping check_command check_python_ping!30!200 } 效果图如下: |
|