Tomcat 服务状态监测自动重启脚本

本文介绍了一个用于检查Tomcat服务器状态并自动重启的Shell脚本。该脚本通过定时任务每隔10分钟运行一次,检查Tomcat首页是否可访问。若访问失败,脚本将尝试重启Tomcat,确保服务的稳定运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#/bin/bash
#脚本可写入到自动任务中,执行周期可根据tomcat起停时间长短来定,如下,每天0点到20点之间每隔10分钟检查一次  
#echo "*/10 0-20 * * * root /usr/local/tomcat/admin-server/script/tomcat_check.sh  >> /usr/local/tomcat/admin-server/script/tomcat_check.log 2>&1" >> /etc/crontab  
# */01 * * * * root /mydirfiles/script/tomcat_check.sh  >> /mydirfiles/script/tomcat_check.log 2>&1
# */01 * * * * root flock -xn /mydirfiles/script/tomcat_check.sh -c /mydirfiles/script/tomcat_check.sh  >> /mydirfiles/script/tomcat_check.log 2>&1
# */01 * * * * root flock -xn /mydirfiles/script/tomcat_check.lock -c /mydirfiles/script/tomcat_check.sh  >> /mydirfiles/script/tomcat_check.log 2>&1
cd /usr/local/tomcat/admin-server/script
#删除之前已下载的首页 
rm -rf getCaptcha?x=*
rm -rf hs_err_pid*
rm -rf replay_pid*
#下载首页,失败后最多偿试3次,每次间隔10秒 
wget -T 10 -t 3 -q http://127.0.0.1:9999/xmanager-admin-api/captcha/getCaptcha?x=1
if [ ! -e getCaptcha?x=1 ]; then                                  #判断首页是否下载成功,如果成功,则执行接下来的任务,否则执行else后的任务。  
        date
        #export JAVA_HOME=/usr/java/jdk1.7.0_80
        #export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
        #export PATH=$JAVA_HOME/bin:/usr/local/tengine/sbin:$PATH
    echo "tomcat restarting." 
        /usr/local/tomcat/admin-server/bin/shutdown.sh                          #关闭tomcat  
    sleep 10                                                 #等待tomcat关闭,一般是1~150s不等  
        port=9999
        #根据端口号查询对应的pid
        pid=$(netstat -nlp | grep :$port | awk '{print $7}' | awk -F"/" '{ print $1 }');

        #杀掉对应的进程,如果pid不存在,则不执行
        if [  -n  "$pid"  ];  then
        pgrep java | xargs      kill  -9  $pid;
        fi
        #pgrep java | xargs kill -s 9   #等待时间结束后,偿试强制结束tomcat进程  
    sleep 5
        /usr/local/tomcat/admin-server/bin/startup.sh
    sleep 60                                                   #等待tomcat启动,一般是1~150s不等
        echo "tomcat restarted." 
else
        date
    echo "checked. server is normal " #首页下载成功,提示已检查  
fi
cd /usr/local/tomcat/admin-server/script
rm -f tomcat_check.lock

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值