#! /bin/bash
WEBHOOK_URL=https://oapi.dingtalk.com/robot/send?access_token=f6cf35cf4e36a9fb12f446c62c3883f8cbaf212697c368a780405d6b45c39c51
for i in `cat host.txt`
do
date=$(date +%Y-%m-%d-%H:%M:%S)
echo -e "\n"
echo -e "\n"
echo "################################# [ $i平台巡检 ] ######################################"
status=$(curl -I -m 10 -o /dev/null -s -w %{http_code} $i )
if [ "$status" -ne 200 ]
then
curl --location --request POST ${WEBHOOK_URL} \
--header 'Content-Type: application/json' \
-d '{"msgtype": "text","text": {"content": "'$date' '$i'平台访问异常:'$status'"}}' > /dev/null
echo "$date $i-平台访问异常,状态码$status" >>/var/log/pingtai.log
else
echo "$date $i平台访问正常:$status" >>/var/log/pingtai.log
fi
echo "############################ [ $i平台springboot巡检 ] ##################################"
for spring in jiancha data #定义自己接口程序
do
status1=$(curl -I -m 10 -o /dev/null -s -w %{http_code} $i/$spring/version )
if [ "$status1" -ne 200 ]
then
curl --location --request POST ${WEBHOOK_URL} \
--header 'Content-Type: application/json' \
-d '{"msgtype": "text","text": {"content": "'$date' '$i'/'$spring'/version 接口访问异常:'$status1'"}}' > /dev/null
echo "$date $i-$spring访问异常,状态码$status1"
echo "$date $i-$spring访问异常,状态码$status1" >>/var/log/interface.log
else
echo "$date $i-$spring访问异常,状态码$status1"
echo "$date $i-$spring访问正常,状态码:$status1" >>/var/log/interface.log
fi
done ;
echo "############################# [ $i平台巡检结束 ] ######################################"
echo -e "\n"
echo -e "\n"
done
注:host.txt文件自己定义,日志打印文件需要自己定义,WEBHOOK_URL需要自己创建钉钉机器人获取