菜单

Administrator
发布于 2024-05-30 / 21 阅读
0

shell脚本监控http状态,有问题钉钉报警提示

shell脚本监控http状态,有问题钉钉报警提示

钉钉建立一个群,然后点击设置添加一个机器人,机器人中设定自定义关键字(监控警告)

然后复制token到下列代码

记得先建立http_url.txt

由于是nginx起的服务,所以nginx没有设置自动启动,如果出现主机重启,会第一时间通知,随后手动再启动服务

[root@mail data]# cat http_health.sh 
#!/bin/bash
#返回状态码不是200,都视为异常
#http_url.txt存放url地址
pwd=/data
http_url=`cat $pwd/http_url.txt`

for url in $http_url;do
	fail_count=0
        status_code=`curl -s -o /dev/null $url -w "%{http_code}\n"`
	#time=$(date "+%Y-%m-%d %H:%M:%S")
	for ((i=0;i<=3;i++));do
		if [ $status_code -ge 200 ];then
			#echo "访问成功!$url"
			break
		else
			let fail_count++
		fi
	done
	time=$(date "+%Y-%m-%d %H:%M:%S")
	if [ $fail_count -ge 3 ];then
		curl 'https://oapi.dingtalk.com/robot/send?access_token=xxxxxx' -H 'Content-Type: application/json' -d "{'msgtype': 'text','text': {'content':'监控告警!!!\nhttp地址: $url 无法正常访问,请及时查看!\n访问时间: $time \n'},'at': {'isAtAll':true}}"
	fi
done

以上借鉴https://blog.csdn.net/weixin_46031767/article/details/125785923