【shell脚本】自动监控tomcat服务===autoCheck.sh

自动监控tomcat服务,当tommcat服务挂掉时自动重启

一、脚本内容

[root@localhost ]# cat /root/autoCheck.sh 
#!/bin/bash
startTomcat=/usr/local/tomcat-7/bin/startup.sh
tomcatLog=/tmp/tomcatLog
tomcatID=`ps -ef | grep tomcat-7 | grep -w 'tomcat-7' | grep -v 'grep' | wc -l`
Monitor()
{
  #while true;do
  #tomcatID=`ps -ef | grep tomcat-7 | grep -w 'tomcat-7' | grep -v 'grep' | wc -l`
  echo "[info] 开始监控tomcat...[$(date +'%F %H:%M:%S')]"
  if [ $tomcatID -lt 1 ];then
    echo "[error] tomcat进程不存在!tomcat开始自动重启..."
    echo "[info] $startTomcat,请稍候..."
    sleep 3
    $startTomcat
    echo "[info] 服务启动成功..."
  fi
  echo "======================================================"
  #sleep 1
  #done
}
Monitor >> $tomcatLog

分析:

  1)先定义tomcat服务启动目录startTomcat

  2)定义日志输出目录tomcatLog

  3)查询的tomcat进程号,通过wc -l统计是否存在该进程号,存在则大于1,不存在则小于1

  4)判断是否存在tomcat服务进程,小于1则服务不存在,睡眠3秒重启tomcat服务,并将启动信息输出到日志文件中

二、设置定时执行任务

设置为每一分钟执行一次监控脚本

[root@localhost ]# crontab -l
*/1 * * * * /root/autoCheck.sh

猜你喜欢

转载自www.cnblogs.com/HeiDi-BoKe/p/11610984.html