日期:2014-05-16  浏览次数:20763 次

linux下网站状态监控实现(免费手机短信和MSN消息提醒)
linux下网站状态监控实现(免费手机短信和MSN消息提醒)

参考了张宴的《Linux服务器系统监控框架与MSN、E-mail、手机短信报警的实现》并结合飞信的免费短信接口为服务器做了个监控脚本,在监控端服务器(公司内部服务器)部署完之后,每隔5分钟检测一次网站是否能正常访问,如果有异常则通过飞信免费发送警报短信到指定手机或者MSN上。

首先需要有一个已开通飞信的手机号,并把接收警报短信的手机号加为飞信好友(也可以自己给自己发),然后申请一个专门用来发送警报消息的msn帐号,并加为自己的msn好友。

/var/cron/monitor/http.sh (博客的代码显示插件有点小问题,复制代码请单击编辑右上角的view source按钮,然后复制)

[Copy to clipboard]查看源码 BASH
#!/bin/sh
LANG=C
 
#被监控服务器、端口列表
server_all_list=(
junnan.org 
)
 
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
  #发送msn警报消息(如果不需要msn警报可以注释这行)
  curl -m 600 -d menu=http -d date=