Tomcat监控(监控Tomcat宕机自动重启)

  1. 在Linux根目录下创建一个 /datas/monitor.sh 脚本文件,文件内容如下:

#!/bin/sh
# 获取tomcat进程ID
TomcatID=$(ps -ef |grep tomcat |grep -w 'tomcat'|grep -v 'grep'|awk '{print $2}')

# tomcat启动程序,/datas/apache-tomcat-8.5.84/bin/startup.sh为tomcat的启动脚本
StartTomcat=/soft/apache-tomcat-8.5.82A/bin/startup.sh
TomcatCache=/soft/apache-tomcat-8.5.82A/work

# 启动脚本打印的日志
TomcatMonitorLog=/tmp/TomcatMonitor.log

Monitor()
{
echo "[info]开始监控tomcat...[$(date +'%F %H:%M:%S')]"
if [ $TomcatID ];then  #这里判断Tomcat进程是否存在
  echo "[info]tomcat正在运行,进程ID为:$TomcatID"
else
  echo "[error]tomcat进程不存在!tomcat开始自动重启..."
  echo "[info]$StartTomcat,请稍候..."
  rm -rf $TomcatCache
  $StartTomcat
fi
echo "-------------end------------"
}
Monitor>>$TomcatMonitorLog
  1. 修改 $TOMCAT_HOME/bin/setclasspath.sh 文件,在文件的开始添加 JAVA_HOME 和 JRE_HOME,如下图所示

export JAVA_HOME=/soft/jdk1.8.0_202
export JRE_HOME=/soft/jdk1.8.0_202/jre
  1. 添加系统的定时调度,修改 /etc/crontab 文件,在文件末尾添加如下内容:

 */1 *  *  *  * root /datas/monitor.sh
  1. 运行./monitor.sh生成TomcatMonitor.log文件

(提示:如果出现permission denied错误说明权限不足,需要chmod +x monitor.sh授权)

  1. 通过 tail -f /tmp/TomcatMonitor.log 查看脚本执行清空,如果没有运行,执行 systemctl restart crond 重启Linux定时调度。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要让Tomcat8宕机自动重启,可以使用以下两种方法之一: 1. 使用Systemd服务管理器(推荐) 首先,创建一个名为tomcat8.service的服务文件,该文件应该位于/lib/systemd/system/目录下。在该文件中,添加以下内容: ``` [Unit] Description=Tomcat 8 After=syslog.target network.target [Service] Type=forking PIDFile=/opt/tomcat8/temp/tomcat.pid ExecStart=/opt/tomcat8/bin/startup.sh ExecStop=/opt/tomcat8/bin/shutdown.sh User=tomcat Group=tomcat Restart=on-failure [Install] WantedBy=multi-user.target ``` 然后,使用以下命令启动Tomcat服务并将其设置为自动启动: ``` sudo systemctl start tomcat8 sudo systemctl enable tomcat8 ``` 2. 使用Monit监视器 Monit是一种系统监视器,可以监视进程、文件、网络连接等,并在发生故障时采取相应的措施。要使用Monit监视Tomcat8进程并在它宕机自动重启,可以按照以下步骤操作: 首先,安装Monit: ``` sudo apt-get install monit ``` 然后,创建一个名为tomcat8的Monit配置文件,该文件应该位于/etc/monit/conf.d/目录下。在该文件中,添加以下内容: ``` check process tomcat8 with pidfile /opt/tomcat8/temp/tomcat.pid start program = "/opt/tomcat8/bin/startup.sh" stop program = "/opt/tomcat8/bin/shutdown.sh" if failed host 127.0.0.1 port 8080 protocol http then restart ``` 最后,使用以下命令启动Monit服务: ``` sudo systemctl start monit ``` 现在,Monit将监视Tomcat8进程,并在它宕机自动重启

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值