一个自用的shell脚本,定时检测tomcat故障,发现故障时自动重启。
代码如下:
复制代码代码示例:
#!/bin/bash
#www.it.net.cn if [ ! -f /tmp/down_count ];then echo "0" > /tmp/down_count fi curl -I tomcat-host -o "/tmp/status" >/dev/null 2>&1 code=`awk 'NR==1 {print $2}' /tmp/status` if [ "${code}" -ge 500 ];then down=`expr $(cat /tmp/down_count) + 1` echo "$down" > /tmp/down_count if [ "$down" -gt 3 ];then if [ ! -f "/tmp/restart_count" ];then echo "0" > /tmp/restart_count fi restart_count=`expr $(cat /tmp/restart_count) + 1` echo "$restart_count" > /tmp/restart_count if [ "$restart_count" -le 2 ];then echo "tomcat down at `date`" >> /tmp/down_info /etc/init.d/tomcat6 restart fi fi else echo "0" > /tmp/down_count echo "0" > /tmp/restart_count fi
说明: 有兴趣的朋友,可以把以上代码,改造为适用于其它服务的脚本,或修改成为一个通用的自动重启脚本,通过参数决定监测的服务类型。 (责任编辑:IT) |