判断远端主机死活,发送飞信短信通知[原创]

Posted: 2009年4月28日星期二
写了个脚本判断远端主机的死活,每隔5分钟检查一次,远端主机是否正常,如死掉了就发送飞信短信到管理员手机上,若管理员不处理,每隔5分钟发一次。脚本内容如下:

#!/bin/sh
IP=172.16.10.100
healthcheck(){
ping -c 1 -w 1 $IP > /dev/null
return $?
}
send_message(){
curl -d username=15000000000 -d password=123456 -d sendto=15000000000 -d message="远端主机$IP已经down掉了" http://sms.api.bz/fetion.php
}
while true; do
while healthcheck; do
echo "health ok!"
sleep 300
done
echo "fail over!"
send_message
sleep 300
done

说明:curl中的几个参数进行说明一下文中采用了http://sms.api.bz的web发送接口,通过curl post数据到http://sms.api.bz,username是飞信的用户名,password是飞信的密码,sendto是发送到飞信好友手机(要发送飞行短信,只能发送给飞信的好友用户)。下面就是一个循环,每隔300秒进行检查,当服务器死掉后,自动发送短信到飞信的好友手机上,如服务器一直没有起来,就每隔300秒再进行一次检查,发送1条报警短信。

感谢http://sms.api.bz提供web发送接口。

0 评论: