文档章节

Linux下监听Tomcat进程运行情况

moonsnake777
 moonsnake777
发布于 2015/06/09 11:48
字数 340
阅读 48
收藏 0

参考来源:http://my.oschina.net/chinaearl/blog/111830

# func:自动监控tomcat脚本并且执行重启操作

# tomcat启动程序(这里注意tomcat实际安装的路径)

StartTomcat=/myzone/apache-tomcat-7.0.56/bin/startup.sh

TomcatCache=/myzone/apache-tomcat-7.0.56/tomcatCache

 
# 定义要监控的页面地址

WebUrl=http://localhost:8080/

 
# 日志输出

GetPageInfo=/myzone/apache-tomcat-7.0.56/null

TomcatMonitorLog=/myzone/apache-tomcat-7.0.56/TomcatMonitor.log

 
Monitor()

{

  echo "[info]开始监控tomcat...[$(date +'%F %H:%M:%S')]"

  # 获取tomcat进程ID

  while(true)

  do

  TomcatID=$(ps -ef |grep tomcat |grep -w '\/myzone\/apache-tomcat-7.0.56\/conf'|grep -v 'grep'|awk '{print $2}')

  if [ $TomcatID ];then # 这里判断TOMCAT进程是否存在

    echo "[info]当前tomcat进程ID为:$TomcatID,继续检测页面..."

    # 检测是否启动成功(成功的话页面会返回状态"200")

    TomcatServiceCode=$(curl -s -o $GetPageInfo -m 10 --connect-timeout 10 $WebUrl -w %{http_code})

    if [ $TomcatServiceCode -eq 200 ];
then

        echo "[info]页面返回码为$TomcatServiceCode,tomcat启动成功,测试页面正常......"

    else

        echo "[error]tomcat页面出错,请注意......状态码为$TomcatServiceCode,错误日志已输出到$GetPageInfo"

        echo "[error]页面访问出错,开始重启tomcat"

        kill -9 $TomcatID  # 杀掉原tomcat进程

        rm -rf $TomcatCache # 清理tomcat缓存

        $StartTomcat

    fi

  else

    echo "[error]tomcat进程不存在!tomcat开始自动重启..."

    echo "[info]$StartTomcat,请稍候......"

    rm -rf $TomcatCache

    $StartTomcat

  fi

    echo "------------------------------"


  sleep 60

  done

}

Monitor>>$TomcatMonitorLog

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
moonsnake777
粉丝 2
博文 29
码字总数 41046
作品 0
linux下tomcat服务的相关命令

一:Linux下tomcat服务的启动、关闭与错误跟踪,使用PuTTy远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务: 切换到tomcat主目录下的bin目录(cd usr/local/tomcat/bin) 1,...

leqianlong
2014/02/11
0
0
CentOS7下Supervisor安装与配置(Linux/Unix进程管理工具)

Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多...

yzy121403725
06/27
0
0
Supervisor安装与配置

Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多...

AltBoy
06/26
0
0
线上应用故障排查之一:高CPU占用

一个应用占用CPU很高,除了确实是计算密集型应用之外,通常原因都是出现了死循环。 以我们最近出现的一个实际故障为例,介绍怎么定位和解决这类问题。 根据top命令,发现PID为28555的Java进程...

sucre
2014/09/25
0
3
关于Oracle10.2.0自行启动两个监听进程导致服务中断问题

环境: AIX6.1 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi Tomat 5.0.28 Oracle的安装文件是 10gr2aix5l64database.cpio.gz 问题描述: 服务运行大约一周后,Oracl......

TDQ
2010/10/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

go语言学习总结

一、描述 go语言是直接将源码编译成二进制机器码的语言;它支持面向对象、也支持函数式编程;支持并发很容易; 二、基本语法学习路径 https://studygolang.com/subject/2...

盼望明天
22分钟前
1
0
JSP 九大内置对象及其作用域

JSP 中一共预先定义了 9 个这样的对象,分别为:request、response、session、application、out、pagecontext、config、page、exception ,下面就简单介绍下。 1、request 对象 request 对象...

几个栗子
34分钟前
0
0
Java中的坑之方括号

Java中的坑之方括号 这一段时间,在做项目的时候,发现了一个坑,这个坑说大不大,说小不小,不知道的足够喝一壶,知道的就可以轻松解决。 问题描述 在做数据统计的时候,遇见了如下形式的数...

星汉
44分钟前
1
0
[雪峰磁针石博客]python机器学习、web开发等书籍汇总

Building Machine Learning Systems with Python Third Edition - 2018.pdf 下载地址 Get more from your data by creating practical machine learning systems with Python Key Features ......

python测试开发人工智能安全
55分钟前
1
0
文件的压缩与解压(linux)

Linux下*.tar.gz文件解压缩命令 1.压缩命令:   命令格式:tar -zcvf 压缩后文件名.tar.gz 被压缩文件名 可先切换到当前目录下。压缩文件名和被压缩文件名都可加入路径。 2.解压缩命令: ...

qimh
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部