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

#/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

发布了15 篇原创文章 · 获赞 15 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/a568418299/article/details/83007450
今日推荐