如何监控tomcat进程并杀死它
我不知道为什么在linux上有时候./shutdown.sh不能关闭掉tomcat,我估计是因为有其它的进程在使用它,于是每次都只能手动的kill -9去杀掉他,后来我嫌麻烦于是自己写了个监控PID的脚本,然后用JAVA程序去访问我的页面,如果异常或者超时,我就调用这个监控去杀掉tomcat,并重新启动它首先我要准备一个脚本叫做killtomcat.sh,哈哈,监控的原理很简单通过ps -ef|grep 来实现
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px;"> 1http://www.blogjava.net/Images/OutliningIndicators/None.gif#!/bin/bash
2http://www.blogjava.net/Images/OutliningIndicators/None.gifexport JAVA_HOME=/local/akazam/servers/java
3http://www.blogjava.net/Images/OutliningIndicators/None.gifexport CATALINA_HOME=/local/akazam/servers/tomcat
4http://www.blogjava.net/Images/OutliningIndicators/None.gifexport CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/td.jar:$JAVA_HOME/jre/lib/rt.jar:$CATALINA_HOME/lib/servlet-api:$CATALINA_HOME/lib/catalina-ant.jar:$CATALINA_HOME/lib/catalina.jar:$CATALINA_HOME/lib/annotations-api.jar:$CATALINA_HOME/lib/tomcat-coyote.jar:$CATALINA_HOME/lib/tomcat-dbcp.jar:$CATALINA_HOME/lib/jsp-api.jar:$CATALINA_HOME/lib/commons-pool.jar:$CATALINA_HOME/lib/common-dbcp.jar:$CATALINA_HOME/lib/catalina-tribes:$CATALINA_HOME/lib/catalina-ha.jar:.
5http://www.blogjava.net/Images/OutliningIndicators/None.gifexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$CATALINA_HOME/bin:$PATH
6http://www.blogjava.net/Images/OutliningIndicators/None.gifTOMCAT_PATH=/local/akazam/servers/tomcat/bin
7http://www.blogjava.net/Images/OutliningIndicators/None.gifif [ $# -eq 0 ]
8http://www.blogjava.net/Images/OutliningIndicators/None.gif then
9http://www.blogjava.net/Images/OutliningIndicators/None.gif echo "ERROR:Usage: process argumenthttp://www.blogjava.net/Images/dot.gif" 1>&2
10http://www.blogjava.net/Images/OutliningIndicators/None.gif echo "eg:If you want to restart tomcat you can enter ./restart.sh tomcat!" 1>&2
11http://www.blogjava.net/Images/OutliningIndicators/None.gif exit 1
12http://www.blogjava.net/Images/OutliningIndicators/None.giffi
13http://www.blogjava.net/Images/OutliningIndicators/None.gifpath=$1
14http://www.blogjava.net/Images/OutliningIndicators/None.gifset $(ps -ef|grep $path)
15http://www.blogjava.net/Images/OutliningIndicators/None.gifpid=$2
16http://www.blogjava.net/Images/OutliningIndicators/None.gifflaggrep=$8
17http://www.blogjava.net/Images/OutliningIndicators/None.gifecho "tomcat pid : $pid,flag : $flaggrep"
18http://www.blogjava.net/Images/OutliningIndicators/None.gif
19http://www.blogjava.net/Images/OutliningIndicators/None.gifif [ "$flaggrep" = "grep" -o "$flaggrep" = "/bin/bash" ]
20http://www.blogjava.net/Images/OutliningIndicators/None.gifthen
21http://www.blogjava.net/Images/OutliningIndicators/None.gif echo "no thread start"
22http://www.blogjava.net/Images/OutliningIndicators/None.gifelse
23http://www.blogjava.net/Images/OutliningIndicators/None.gif#kill tomcat
24http://www.blogjava.net/Images/OutliningIndicators/None.gifkill -9 $pid
25http://www.blogjava.net/Images/OutliningIndicators/None.gifsleep 3
26http://www.blogjava.net/Images/OutliningIndicators/None.gifecho "killed thread"
27http://www.blogjava.net/Images/OutliningIndicators/None.giffi
28http://www.blogjava.net/Images/OutliningIndicators/None.gif#start tomcat
29http://www.blogjava.net/Images/OutliningIndicators/None.gifcd $TOMCAT_PATH
30http://www.blogjava.net/Images/OutliningIndicators/None.gif./startup.sh
31http://www.blogjava.net/Images/OutliningIndicators/None.gifecho "tomcat restart!"
页:
[1]