-
tomcat在运行的时候,由于各种原因会出现挂掉情况,以下用Shell脚本监控并实现自动启动
shell脚本这里为其命名为monitor.sh#!/bin/sh # function:自动监控tomcat进程,宕机就执行重启操作 # 定义环境变量 PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/java/jdk1.8.0_25/bin export JAVA_HOME=/usr/local/java/jdk1.8.0_25 export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin # 获取tomcat PPID pid=$(ps -ef|grep apache-tomcat-8.5.32|grep -v grep | awk '{print $2}') # tomcat_startup startTomcat=/home/apache-tomcat-8.5.32/bin/startup.sh stopTomcat=/home/apache-tomcat-8.5.32/bin/shutdown.sh step=3 #间隔的秒数,不能大于60 # 日志输出 monitorLog=/home/monitor/logs/monitor.log Monitor() { echo "[info]开始监控tomcat...[$(date +'%F %H:%M:%S')]" echo "[info]tomcat进程ID为:$pid. " if [ -n "$pid" ];then echo "[info]tomcat进程ID为:$pid. 运行正常" else echo "[error]进程不存在! Tomcat自动重启..." echo "[info]$stopTomcat, 关闭Tomcat" $stopTomcat sleep $step echo "[info]$startTomcat, 开启Tomcat" $startTomcat fi echo "------------------------------" } Monitor>>$monitorLog
-
脚本.sh新建后没有可执行权限,需要为其添加可执行权限
chmod u+x monitor.sh
备注: chmod是权限管理命令、u代表所有者、x代表执行权限、 + 表示增加权限
-
配置定时任务,这里用crontab
3.1 执行:crontab -e
3.2 添加如下,下面是一分钟执行一次* * * * * sleep 1; /home/monitor/monitor.sh
3.3 查看定时任务:crontab -l
3.4 重启定时任务:service crond start
Linux定时任务监控tomcat运行状态,宕机自动启动
最新推荐文章于 2023-05-17 10:44:39 发布