一个ping检测告警函数代码

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享

免费资源网 – https://freexyz.cn/
复制代码

代码如下:

#!/bin/bash

 ping_monitor()

    {

host_=(203 204 205 207 208 209 210 212 213 214 215 216 217 218 219 220 221)

    ping_count=3

    called=(13000000001 13000000002 13000000003)

calling=13000000000

    callop=1310000000

    #main————————————————————

echo “`date “+%Y%m%d %H:%M:%S”`—–>脚本开始执行……”>>ping_log

    for host_1 in ${host_[*]};do

host=192.168.1.$host_1

       echo “——–>开始检测$host服务器通迅是否正常,ping次数$count”

ping_result=`ping $host -c $ping_count |tail -2 |head -1`

       #sleep 1

       echo “——–>服务器$host检测已完成”

       #取成功条数

       succ_ping=`echo ${ping_result:23:1}`

       #取失败百分比

loss_ping=`echo ${ping_result:46:4}`

          if [ $succ_ping -eq $ping_count ];then

echo “本次检测结果—->$host服务器ping检测正常”

             echo “`date “+%Y%m%d %H:%M:%S”`—>$host服务器ping检测正常” >>ping_log

          else

echo “本次检测结果—->$host服务器有丢包现象,丢包率为:$loss_ping”

             echo “`date “+%Y%m%d %H:%M:%S”`—>$host服务器有丢包现象,丢包率为:$loss_ping” >>ping_err_log

#插入短信表—smssend00

             for called in ${telno[*]};do

    mysql -h$dbhost -u$dbuser -p$dbpass -D$dbbase <

INSERT INTO $dbtable (servercode,smsservercode,groupid,priority,calling,called,payer,orderdatetime,senddatetime,effectstarttime,

effectendtime,effectstarttime2,effectendtime2,invaliddatetime,feevalue,iffee,message,hideflag,msgtype,smsfeetype,ifsmsreport,service

type,morelatetomtflag,reserve,optempid,optuserid,clientprogramtype,optcode,optip,remark)

      VALUES

(2,2,1,0,$calling,$called,$callop,Now(),Now(),00:00:00,23:59:59,NULL,NULL,NULL,0,1,服务器告警!!$host服务器检测到有丢包现像,丢包率:$loss_ping,0,1,2,0,2_2,NULL,NULL,1,668,1,3001,192.168.1.182,NULL)

    GETRECODE

              done

           fi

    done

       echo “`date “+%Y%m%d %H:%M:%S”`—–>脚本运行完毕……”>>ping_log

    }

免费资源网 – https://freexyz.cn/


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞13 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容