• 通过shell检查服务并发送mail告警(shell监控脚本)


    环境:centos
    思路:通过curl访问接口获取返回值——>通过判断结果是否成功——>失败通过mail告知运维人员——>通过软件或者定时任务,定时调用该脚本程序

    1、脚本内容如下 vi check.sh

    #!/bin/bash
    rm -rf /tmp/jikcheck 
    #验证结果 通过$?执行结果是0表示成功$1接收接口名称
    jcjg() {
           if [ $? = '0' ]
             then
              jg='成功'
             else
              jg='失败'
           fi
           echo $1接口$jg >>/tmp/jikcheck 
      }
    
    #检查脚本 通过curl访问$1链接防护$2参数表示成功设置超时时间20s
    check(){
       curl --connect-timeout 10 -m 20 -s $1|grep $2 > /dev/null
      }
    #调用check,参数1是接口连接 参数2 是接口返回结果
    check http://gayd.sczwfw.gov.cn:1111/aae913bb19f894fb1cdb5f680919da0b message
    jcjg '大中专院校集体户查询' $?
    
    #查询结果如果有失败通过邮件进行通知
    jg=`cat /tmp/jikcheck|grep '失败'`
    if [ -n "$jg" ]
      then 
        a_name=("yourmail-addr@chinapopin.com")
        for element in ${a_name[@]}
             do
              echo $jg|mail -v -s "接口检测信息邮件" $element
             done
           
       else
         echo '全部成功'
    
    fi
    

    2、赋予脚本执行权限

    chmod u+x check.sh
    

    3、配置程序调用该脚本或者定时任务,我这儿采用定时任务

    #表示8点到晚上8点没半个小时调一次
    [root@minion wj]# crontab -e
    1,30 8-20 * * * /wj/check.sh
    

      

     

    做一个决定,并不难,难的是付诸行动,并且坚持到底。
  • 相关阅读:
    leetcode 15. 三数之和
    leetcode 168. Excel表列名称
    142. 环形链表 II
    144. 二叉树的前序遍历(非递归)
    415. 字符串相加
    剑指 Offer 31. 栈的压入、弹出序列
    剑指 Offer 27. 二叉树的镜像
    剑指 Offer 29. 顺时针打印矩阵
    剑指 Offer 10- II. 青蛙跳台阶问题
    VBA 实现excel单元格多选
  • 原文地址:https://www.cnblogs.com/wukc/p/13710645.html
Copyright © 2020-2023  润新知