免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: sarahxu
打印 上一主题 下一主题

如何在linux下写个东东监测tomcat服务是否运行? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2005-12-28 10:39 |只看该作者
tmocat的进程是一个java进程吧?有tomcat这个命令么?

论坛徽章:
0
12 [报告]
发表于 2005-12-28 15:33 |只看该作者
后来我直接在crontab -e
*/2 * * * * /usr/java/tomcat/bin/./startup.sh
里直接让它重启,结果在log里面输出的是
This environment variable is needed to run this program
The JAVA_HOME environment variable is not defined
可是我的java环境变量是好的啊

论坛徽章:
0
13 [报告]
发表于 2005-12-28 15:36 |只看该作者
原帖由 sakulagi 于 2005-12-28 10:39 发表
tmocat的进程是一个java进程吧?有tomcat这个命令么?


我也用 java进程检查了 ps -A | grep java
也是不可以

论坛徽章:
0
14 [报告]
发表于 2005-12-28 16:10 |只看该作者
你从startup.sh里能看到到底启动的是什么程序
不行你把ps -A的结果贴上来看一眼

另外crontab和shell环境不一样,你在SHELL里设置的环境变量对cron不起作哟嘎

论坛徽章:
0
15 [报告]
发表于 2005-12-28 17:13 |只看该作者

startup.sh里面就是这个

#!/bin/sh
# -----------------------------------------------------------------------------
# Start Script for the CATALINA Server
#
# $Id: startup.sh,v 1.3 2002/08/04 18:19:43 patrickl Exp $
# -----------------------------------------------------------------------------

# resolve links - $0 may be a softlink
PRG="$0"

while [ -h "$PRG" ] ; do
  ls=`ls -ld "$PRG"`
  link=`expr "$ls" : '.*-> \(.*\)$'`
  if expr "$link" : '.*/.*' > /dev/null; then
    PRG="$link"
  else
    PRG=`dirname "$PRG"`/"$link"
  fi
done

PRGDIR=`dirname "$PRG"`
EXECUTABLE=catalina.sh

# Check that target executable exists
if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
  echo "Cannot find $PRGDIR/$EXECUTABLE"
  echo "This file is needed to run this program"
  exit 1
fi

exec "$PRGDIR"/"$EXECUTABLE" start "$@"

论坛徽章:
0
16 [报告]
发表于 2005-12-28 17:14 |只看该作者

我不太能看懂

请帮个忙吧已经两天没有睡了

论坛徽章:
0
17 [报告]
发表于 2005-12-28 17:15 |只看该作者

我平时手工启动的时候

就是到tomcat目录下面输入命令./startup.sh

论坛徽章:
0
18 [报告]
发表于 2005-12-28 17:22 |只看该作者
至于这么麻烦吗?

running=`ps -ef |grep /usr/local/tomcat |grep -v grep`
if [ "x" != "x$running" ]
then
        echo "Tomcat already running!"
        exit 0
fi
su - -c "/usr/local/tomcat/bin/startup.sh &"
sleep 3
running=`ps -ef |grep /usr/local/tomcat |grep -v grep`
if [ "x" = "x$running" ]
then
        echo "Tomcat start error!"
        exit 1
else
        echo "Tomcat restore succeed"
        exit 0
fi

论坛徽章:
0
19 [报告]
发表于 2005-12-28 17:31 |只看该作者

楼上这位大哥能解释一下这段代码?

请不要笑话小妹, 俺原来对linux都不懂,后来老板一定要让俺解决,俺实在一点办法也没有

论坛徽章:
0
20 [报告]
发表于 2005-12-28 17:37 |只看该作者

不知道为什吗?

我在tomcat路径下面直接输入命令startup.sh不可以但是输入./startup.sh就可以了,
这是为什吗啊?是我的java的path设置不对吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP