一个线上监控网站小脚本

#!/usr/bin/env bash
#author:danny
#date:2017-12-28
#检测80端口和公司主页存活状态
Check_URL=`/usr/bin/curl -I https://www.xxx.com --connect-timeout 5 --max-time 5 -o /dev/null 2>/dev/null -w "%{http_code} "`
send=1
send_1=1
Mail="danny@test.com"
Sleep=60
Date=`date +%F %H:%M`
Check_web=`netstat -nltp | grep ":80" | wc -l`

while true
do
#检测公司主页存活状态
if [ $Check_URL -ne 200 ]&&[ $send -eq 1 ];then
echo "生产主页www.xxx.com访问失败,请尽快处理!!!" | mail -s "生产主页www.xxx.com访问失败,请尽快处理!!!" $Mail
send=0
fi

if [ $Check_URL -eq 200 ]&&[ $send -eq 0 ];then
echo " 生产主页www.xxx.com已恢复 " | mail -s " 生产主页www.xxx.com已恢复 " $Mail
send=1
fi

#检测80端口存活状态
if [ $Check_web -eq 0 ]&&[ $send_1 -eq 1 ];then
echo "生产80端口没被监听,请尽快处理!!!" | mail -s "生产80端口没被监听,请尽快处理!!!" $Mail
send_1=0
fi

if [ $Check_web -eq 1 ]&&[ $send_1 -eq 0 ];then
echo " 生产80端口已恢复监听 " | mail -s " 生产80端口已恢复监听 " $Mail
send_1=1
fi

sleep $Sleep

done


放后台启动:

nohup  sh check_URL.sh  2>1  &

附:nohup的其他用法

nohup command > myout.file 2>&1 &

在上面的例子中,输出被重定向到myout.file文件中。

原文地址:https://www.cnblogs.com/dannylinux/p/8342098.html