Shell脚本监控服务存活状态及异常,并触发钉钉webhook报警

(1)首先在钉钉中添加webhook自定义机器人

 

 

 

(2)编写sh脚本,测试发送内容 。 vim  ddSend.sh  将下面内容复制进去

curl "https://oapi.dingtalk.com/robot/send?access_token=xxxxxx" -H 'Content-Type: application/json' -d '{"msgtype": "text",
        "text": {
             "content": "服务可能发生异常,请注意查看日志!"
        }
}'

  

(3)编写触发日志报警的脚本 vim checkLog.sh,比如说监控发生 RuntimeException次数超过0次的;如果条件符合则触发第二步写的 ddSend.sh脚本,命令为souce

#! /bin/bash

count=$(less /usr/local/src/logs/info.log|grep 'RuntimeException:'|wc -l)
echo 'the count: ' $count

if (($count > 0));then
        echo 'send'
        source /home/script/ddSend.sh
fi

echo 'end'

  

 

或者:# ps -ef |grep jar |grep -v grep |wc -l 检查java进程是否存活,比如count=0,说明服务已经挂掉

 

(4)最后一步,利用linux系统本身的 定时任务,执行这个触发日志报警的任务   crontab -e,我们暂时用每15分钟执行一次  举例

*/15 * * * * /home/script/checkLog.sh

 

(5)如果服务宕掉或者有异常发生,将会触发 报警,效果如下:

 

 

 

至此,一个简单又实用的监控就实现啦。如果对您有帮助,动动小手点个赞吧。

 

posted @ 2020-11-21 18:51  哦克Oak  阅读(972)  评论(0编辑  收藏  举报