tomcat运行一段时间后总是会挂,添加检测定时启动

13 篇文章 1 订阅
4 篇文章 0 订阅

tomcat在运行中总会不定时的挂掉。所以我想检测tomcat的状态,如果发现tomcat停止就重新启动tomcat。

第一步:书写脚本,在脚本里面完成检测tomcat和重新启动tomcat等操作;

运行命令vim tomcat.sh

下面直接贴脚本

#!/bin/bash

#获取tomcat的pid进程号

TomcatPid=$(ps -ef | grep tomcat | grep 80 | grep -w 'tomcat' | grep -v 'grep' | awk '{print $2}')

#查看tomcat的进程是否存在

TomcatCount=$(ps -ef | grep tomcat | grep 80 | grep -w 'tomcat' | grep -v 'grep' | wc -l)

#启动tomcat

startTomcat=/usr/local/tomcat/bin/startup.sh

#监控页面

webUrl=http://xxx/dict/ar-zh

#日志输出

TomcatMonitorLog=/home/tomcatMonitor.log

Time=$(date "+%Y-%m-%d %H:%M:%S")

#检测要监控的页面是否启动成功,如果成功的话返回的值是200

TomcatServiceCode=$(curl -I -m 10 -o /dev/null -s -w%{http_code} $webUrl)

Monitor()

{

echo "开始监控tomcat........"$Time

if [ $TomcatCount -ge 0 ];then #判断tomcat的进程是否存在

if [ $TomcatServiceCode -ne 200 ];then

echo "因为tomcat停止因异常停止,即将杀死tomcat进程......."$Time

kill -9 $TomcatPid

sleep 3

rm -rf /usr/local/tomcat/work/

echo "即将重新启动tomcat......"$Time

$startTomcat

echo "重新启动完成**********"$Time

else

echo "程序正在运行,无需操作....."$Time

fi

else #tomcat进程不存在的情况

echo "tomcat进程不存在......"$Time

echo "tomcat开始自启动....."$startTomcat

fi

echo "======================================================================="

}

说明一下:

#获取tomcat的pid进程号,在书写这个的时候需要注意的是80代表的是你要检测的tomcat的端口,引号中的tomcat代表的是你linux中安装的tomcat文件的文件名称

TomcatPid=$(ps -ef | grep tomcat | grep 80 | grep -w 'tomcat' | grep -v 'grep' | awk '{print $2}')

#查看tomcat的进程是否存在。单独运行里面的命令,可以查看返回值。注意端口和你的文件名

TomcatCount=$(ps -ef | grep tomcat | grep 80 | grep -w 'tomcat' | grep -v 'grep' | wc -l)

#启动tomcat,这个是你安装的tomcat的对应的statup.sh文件的路径

startTomcat=/usr/local/tomcat/bin/startup.sh

#监控页面,这个是你项目访问的首页,监控的页面

webUrl=http://xxx/dict/ar-zh

#日志输出,shell脚本日志输出的位置

TomcatMonitorLog=/home/tomcatMonitor.log

#获取当前时间

Time=$(date "+%Y-%m-%d %H:%M:%S")

#检测要监控的页面是否启动成功,如果成功的话返回的值是200。使用这个命令之前先单独运行一下里面的命令,看看tomcat在正常运行的情况下返回值是否是200,要注意一下。

TomcatServiceCode=$(curl -I -m 10 -o /dev/null -s -w%{http_code} http://xxx/dict/ar-zh)

 

第二步:书写完脚本之后,给脚本权限(我的脚本的名字叫tomcat.sh)

chmod 777 tomca.sh (我是直接给了777)

第三步:使用crontab,定时执行

运行命令crontab -e

在打开的文件中输入下面内容

*/5 * * * * /usr/local/tomcat.sh

保存退出即可。要注意的是你脚本的路径

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

one_smail

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值