监控tomcat进程是否正常的脚本

编写monitor.sh监控tomcat是否正常,否则重启

shell 复制代码
#!/bin/sh
# 获取tomcat进程ID  /disk/tomcat8
TomcatID=$(ps -ef |grep tomcat |grep -w 'tomcat8'|grep -v 'grep'|awk '{print $2}')
# tomcat启动程序(这里注意tomcat实际安装的路径)  
StartTomcat=/disk/tomcat8/bin/startup.sh 
# 定义要监控的页面地址  
WebUrl=http://ip:8088/login
# 日志输出 
TomcatMonitorLog=/disk/monitor/TomcatMonitor.log  

Monitor() 
{  
  echo "[info]开始监控tomcat...[$(date +'%F %H:%M:%S')]"  
  if [[ $TomcatID ]];then # 这里判断TOMCAT进程是否存在  
    echo "[info]当前tomcat进程ID为:$TomcatID,继续检测页面..."  
    # 检测是否启动成功(成功的话页面会返回状态"200")
    TomcatServiceCode=$(curl -I -m 10 -o /dev/null -s -w %{http_code} $WebUrl)
    if [ $TomcatServiceCode -eq 200 ];then  
        echo "[info]页面返回码为$TomcatServiceCode,tomcat启动成功,测试页面正常......"  
    else  
        echo "[error]tomcat页面出错,请注意......状态码为$TomcatServiceCode,错误日志已输出到$GetPageInfo"  
        echo "[error]页面访问出错,开始重启tomcat"  
        kill -9 $TomcatID  # 杀掉原tomcat进程  
        sleep 3  
        rm -rf $TomcatCache # 清理tomcat缓存  
        $StartTomcat  
    fi  
  else  
    echo "[error]tomcat进程不存在!tomcat开始自动重启..."  
    echo "[info]$StartTomcat,请稍候......"  
    #rm -rf $TomcatCache  
    $StartTomcat  
  fi  
  echo "------------------------------"  
}  
Monitor>>$TomcatMonitorLog
相关推荐
青云计划9 小时前
知光项目知文发布模块
java·后端·spring·mybatis
赶路人儿10 小时前
Jsoniter(java版本)使用介绍
java·开发语言
探路者继续奋斗10 小时前
IDD意图驱动开发之意图规格说明书
java·规格说明书·开发规范·意图驱动开发·idd
消失的旧时光-194311 小时前
第十九课:为什么要引入消息队列?——异步系统设计思想
java·开发语言
A懿轩A11 小时前
【Java 基础编程】Java 面向对象入门:类与对象、构造器、this 关键字,小白也能写 OOP
java·开发语言
乐观勇敢坚强的老彭12 小时前
c++寒假营day03
java·开发语言·c++
biubiubiu070612 小时前
谷歌浏览器无法访问localhost:8080
java
大黄说说12 小时前
新手选语言不再纠结:Java、Python、Go、JavaScript 四大热门语言全景对比与学习路线建议
java·python·golang
烟沙九洲12 小时前
Java 中的 封装、继承、多态
java
识君啊12 小时前
SpringBoot 事务管理解析 - @Transactional 的正确用法与常见坑
java·数据库·spring boot·后端