shell脚本检查Tomcat运行状态

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin
export JAVA_HOME=/usr/java  
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar  
export PATH=$PATH:$JAVA_HOME/bin:/usr/local/pcre/bin:/usr/local/ffmpeg/bin 

TomcatID=`ps -ef|grep tomcat-5.5|grep -v ‘grep‘|head -1|awk ‘{print $2}‘`
StartTomcat=/usr/local/tool/tomcat-5.5/bin/startup.sh
Weburl=http://localhost:8080
TomcatMonitorlog=/var/log/TomcatMonitor.log

Monitor(){

echo "start check Tomcat .."
if [ $TomcatID ];then
  echo "The TomcatID is $TomcatID"
  TomcatServerCode=`curl -I $Weburl > /etc/swd/status.txt`
  Status=`cat /etc/swd/status.txt|head -1|awk ‘{print $2}‘`

if [ $Status -eq 200 ];then
  echo "Tomcat is ok"
else
  echo "Tomcat is error"
  kill -9 $TomcatID
  sleep 3
  $StartTomcat
fi
  
fi

}

Monitor >> $TomcatMonitorlog
*/5 * * * * /etc/swd/check_tomcat.sh > /dev/null 2>&1
时间: 2024-10-09 22:11:43

shell脚本检查Tomcat运行状态的相关文章

Linux下shell脚本监控Tomcat的状态并实现自动启动

最近公司需要在Linux下监控tomcat的服务,一旦tomcat服务存在异常或者宕机,重启tomcat保证服务的正常运行,由于Linux下有Shell脚本可以实现此效果,下面是Linux下shell脚本监控Tomcat的状态并实现自动启动的步骤. 1.编写Shell脚本monitor.sh #!/bin/sh # func:自动监控tomcat脚本并且执行重启操作# author:EagleHao# date:2018-04-08# DEFINE # 获取tomcat进程ID(其中[grep

shell脚本调度 Tomcat 启动、停止

Tomcat启动: shell脚本调度tomcat时,必须将java home添加到环境变量中,否则无法调用成功 #!/bin/bashexport JAVA_HOME=/usr/lib/jvm/jdk1.8.0_231echo "The execute stime is:"`date` >> execute.logsh /root/apache-tomcat-7.0.94/bin/startup.sh Tomcat停止: 用tomcat自带的shutdown.sh有时不起

Centos开机自动执行shell脚本启动tomcat服务器

有时候需要在Centos系统启动之后自动完成项目的启动,项目部署在tomcat中时,如果Centos关机后开机,各个项目也就已经被停掉了,然后需要自己一个一个的手动去开启各个项目对应的tomcat服务器,想想都比较麻烦,那么如何才能实现,当Centos启动之后,项目就自动也跟着启动了呢? 下面就介绍下Centos如何开机是自动启动shell脚本,通过shell脚本的命令来启动项目对应的tomcat服务器. 一.切换到/etc/init.d目录下 cd /etc/init.d 二.制作sh脚本:v

使用shell脚本监控网站运行状态

前言:好久没有写博客了,上来把之前写的博客几乎全都清理掉了,想写的时候写上一些,蛮不错. shell监控网站/tomcat状态,依靠返回状态码来进行判断,返回200,302认为状态是正常的,否则认为tomcat/nginx/LB/Haproxy/apache挂掉了,脚本实现如下: 1. 创建一个站点文件夹,吧需要监控的地址都写到http_site文件里面 vim http_site ### Nginx site begin ### http://192.168.129.86:38020 http

Shell脚本实现 tomcat 日志定时切割

日志切割的意义: 在生产环境中,当我们使用tomcat服务时,如果用户量过多,有没有日志切割,将会产生很大的日志,一天的日志都能有好几个G大小.当我们需要查看日志记录时,非常麻烦.因此,日志切割是很有必要的! 1.编写shell脚本 vim fengelog.sh #脚本声明 #!/bin/bash . /etc/profile . ~/.bash_profile #定义日志文件目录 applog_path=/usr/local/apache-tomcat-app/logs sapplog_pa

shell脚本检查网站状态

检查网站状态通常使用wget或curl工具,下面分别使用这二种工具来做写检查网站的脚本.(学习自老男孩shell编程) 命令行: 1.curl得到返回值200,表示正常 [[email protected] ~]# curl -o /dev/null -s --connect-timeout 5 -w '%{http_code}' www.baidu.com 200[[email protected] ~] 2.wget得到0,表示正常 [[email protected] ~]# wget -

shell脚本切割tomcat日志文件

转自:http://www.cnblogs.com/lishun1005/p/6054816.html 鉴于在调试logback和log4j的文件切割一直无法成功,随性用shell写个脚本用来切割tomcat下的日志文件(大家如果有在logback或log4j使用文件切割成功的话,可以留下使用方式,先谢谢了) 1:废话少说,直接贴上脚本: #!/bin/sh log_dir=/var/log/tomcat monitor_file=$1 #tomcat目录下的catalina.out文件的绝对路

Shell 脚本 更换tomcat集群war包

运行之前将服务器弄成免ssh登陆. 配置文件没有太大的改动 可以覆盖之前的配置 profile 配置文件 bak=/home/wsm/bak webapps=/home/wsm/webapps/WSMMeasure arry=192.168.68.29 192.168.10.147 newwar=1.war deplypath=/home/wsm/deploy scp.sh 拷贝相关war和脚本到远程服务上 scp.sh #!/bin/bash #拷贝war|deploy.sh|profile

Shell脚本检查memcache进程并自动重启

修正版: #!/bin/sh #check memcache process and restart if down mm_bin="/usr/local/bin/memcached" mm_log="/home/xxx/memcached_check.log" mm_ports=("11211" "11212") mm_param=("-d -m 20480 -p 11211 -u www" "