前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux下查看tomcat宕机并自动重启[通俗易懂]

linux下查看tomcat宕机并自动重启[通俗易懂]

作者头像
全栈程序员站长
发布2022-09-15 10:37:34
4.7K0
发布2022-09-15 10:37:34
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

1.在服务器上创建tomcatMonitor.sh

2.使服务器.sh文件生效chmod u+x *.sh

3.编辑tomcatMonitor.sh文件,if及fi必须成对出现,如果if then写在一行需要用;隔开

代码语言:javascript
复制
#!/bin/sh
# 获取tomcat的PID
TOMCAT_PID=$(ps -ef | grep tomcat | grep -v 'tomcatMonitor'  |grep -v 'grep' | awk '{print $2}')
# tomcat的启动文件位置
START_TOMCAT=/usr/local/tomcat6/bin/startup.sh
# 需要监测的一个GET请求地址
MONITOR_URL=http://localhost:8080/hnrwms/login.do?method=begin
# 监测日志输出路径
TOMCAT_MONITOR_LOG=/home/user/tomcatMonitor.log
Monitor()
{
  # 输出时间,注意date后有个空格
  echo "[$(date +'%F %H:%M:%S')]"
  echo "[info]$TOMCAT_PID,开始监控tomcat..."
  # 判断tomcat的PID是否存在,如不存在说明tomcat进程已关闭,注意[]前后,变量前后,都要有空格
  if [[ $TOMCAT_PID ]];then
    echo "[info]当前tomcat的PID为:$TOMCAT_PID,继续监测页面..."
    # 向监测的地址发送请求并获取响应码
    HTTP_REPONSE_STATUS=$(curl -l -m 10 -o /dev/null -s -w %{http_code} $MONITOR_URL)
    # 如果响应码为200证明tomcat在正常启用
    if [[ $HTTP_REPONSE_STATUS -eq 200 ]];then
      echo "[info]tomcat启动正常..."
    else
      echo "[error]页面返回码为$HTTP_REPONSE_STATUS,开始重启tomcat..."
      # 结束tomcat进程
      kill -9 $TOMCAT_PID
      # 5秒后重启tomcat
      sleep 5
      $START_TOMCAT
    fi
  else
    echo "[error]tomcat进程不存在,开始启动..."
    echo "[info]$START_TOMCAT,..."
    $START_TOMCAT
  fi
  echo "监测执行完成"
}
# 输出到指定文件中
Monitor>>$TOMCAT_MONITOR_LOG

4.编辑定时器

代码语言:javascript
复制
crontab -e

5.编辑定时器文件,设置每分钟执行一次,加入如下代码并保存

代码语言:javascript
复制
*/1 * * * * /home/user/tomcatMonitor.sh

6.重新加载定时器

代码语言:javascript
复制
systemctl reload crond.service

或者

代码语言:javascript
复制
service crond reload

7.输入如下代码可以看到tomcatManitor.sh已经在正常工作,如果log日志有多个tomcat进程应想办法过滤掉,不然会影响tomcat关掉进程和重启

代码语言:javascript
复制
tail tomcatMonitor.log

8.日志记录

linux下查看tomcat宕机并自动重启[通俗易懂]
linux下查看tomcat宕机并自动重启[通俗易懂]

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/163633.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档