检测tomcat假死时重新启动及邮件通知

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检测tomcat假死时重新启动及邮件通知相关的知识,希望对你有一定的参考价值。

脚本内容:

#!/bin/bash
IP=10.78.1.183
PORT=8114
TOMCAT_DIR=/data/tomcat_8114
function send_mail(){
        maillist=(
                [email protected]
        )
        DATE=`date +‘%F %T‘`
        SUBJECT="${IP}的${PORT}端口发生故障,已自动重启!"
        CONTENT="时间:${DATE}
主机:${IP}
事件:${PORT}端口发生重启"
        for mail in ${maillist[*]};do
                echo -e "${CONTENT}" | mail -s "${SUBJECT}" $mail
        done
}
declare -i NUM=0
for i in `seq 1 3`;do
        CODE=$(/usr/bin/curl -I -m 10 -o /dev/null -s -w %{http_code}"
" http://10.78.1.183:8114)
        if [ $CODE == "000"  ];then
                ((NUM++))
        fi
        sleep 3
done
if [ $NUM == 3 ];then
        IS_LIVING=`jps -m -l -v | grep 8114 | wc -l`
        if [ ${IS_LIVING} -eq 1 ];then
                PID=`jps -m -l -v | grep 8114 | awk ‘{print $1}‘`
                kill -9 $PID
                ${TOMCAT_DIR}/bin/startup.sh
        elif [ ${IS_LIVING} -eq 0 ];then
                ${TOMCAT_DIR}/bin/startup.sh
        fi
        send_mail
fi

任务计划:每5分钟检测一次

*/5 * * * * /server/scripts/tomcat/check_8114.sh

以上是关于检测tomcat假死时重新启动及邮件通知的主要内容,如果未能解决你的问题,请参考以下文章

开机启动+Linux发送邮件

tomcat假死 (原因及解决办法)

从强制退出启动应用程序时检测可操作的通知按钮 - Swift

netty导致tomcat假死

Tomcat假死的原因及解决方案

WebMail服务启动不了及解决方法?