利用shell脚本监控网站状态

 

最近公司服务器所在机房常因攻击和网络故障导致网站无法正常访问,为了能第一时间获知网站无法访问,并快速处理问题,特利用shell脚本对服务器访问状况进行监控,一但网站无法访问即可触发短信报警,这里面参考了张晏和junnan的博文,在此表示感谢!!
 
         首先需要有一个已开通飞信的手机号,并把接收警报短信的手机号加为飞信好友(也可以自己给自己发),调用 飞信的免费短信接口 发送报警短信,也可使用MSN报警,相对短信报警更及时。
         编辑脚本http.sh
vi /opt/http.sh
 
#!/bin/sh
LANG=C
 
#被监控服务器、端口列表
server_all_list=(\
www.qq.com:80  \
www.163.com:80  \
www.sina.com:80  \
)
 
telnum=已开通飞信的手机号
passwd=飞信密码
 
date=$(date -d "today" +"%Y-%m-%d_%H:%M:%S")
#采用HTTP POST方式发送检测信息给接口程序interface.php,接口程序负责分析信息,决定是否发送报警MSN消息、手机短信、电子邮件。
send_msg_to_interface()
{
        if [[ $2 = "0" ]] || [[ $2 = "2" ]]; then
                #开始发送警报短信,13500000000是接收方手机号
                curl -m 600 -d username=${telnum} -d password=${passwd} -d sendto=13500000000 -d message=$1   http://sms.api.bz/fetion.php
  echo "`date +'%Y-%m-%d %H:%M:%S'`      $1 ">> http_down.log
                #发送msn警报消息(如果不需要msn警报可以注释这行)
#               curl -m 600 -d menu=http -d date=$date -d ip=$server_ip -d port=$server_port -d status=$status  http://127.0.0.1/monitor/interface.php
        fi;
}
 
server_all_len=${#server_all_list[*]}

阅读全文>>

你可能感兴趣的:(利用shell脚本监控网站状态)