Linux上监控tomcat down掉后自动重启tomcat
Linux上监控tomcat down掉后自动重启tomcat
解决思路
Linux上监控tomcat down掉后自动重启tomcat
- 第一步编辑:monitor.sh文件(文件内容看下文)
- 第二步安装crontab (安装步骤看下文)
- 第三步添加定时任务:crontab -e
- 第四部添加crontab内容 */1 * * * * /usr/java/monitor.sh
- 第五步重新加载crontab `crontab /etc/crontab`
- 第六步手动挂断tomcat,检查是否能自动重启
设置monitor.sh内容
monitor.sh文件内容(配置完手动执行下:./monitor.sh 看看是否能启动挂掉的tomcat)
=========monitor.sh开始===============
#!/bin/sh#定义环境变量(要改成自己的jdk相关地址)
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/java/jdk1.7.0_79/bin
export JAVA_HOME=/usr/java/jdk1.7.0_79
export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin# 获取tomcat进程ID(这里注意tomcat7要改成自己的tomcat目录名)
TomcatID=$(ps -ef |grep tomcat |grep -w 'tomcat7'|grep -v 'grep'|awk '{print $2}') # tomcat启动程序(这里注意要改成自己tomcat实际安装的路径)
StartTomcat=/usr/java/tomcat7/bin/startup.sh
TomcatCache=/usr/java/tomcat/work # 自己定义要监控的页面地址,页面越简单越好,比如:页面上写个success即可
WebUrl=http://ip:端口/test.jsp
# 日志输出 (自己定义地址,用于输出监控日志和监控报错日志)
TomcatMonitorLog=/usr/java/monitor/TomcatMonitor.log
GetPageInfo=/usr/java/monitor/PageInfo.logMonitor()
{ echo "[info]开始监控tomcat...[$(date +'%F %H:%M:%S')]" if [[ $TomcatID ]];then # 这里判断TOMCAT进程是否存在 echo "[info]当前tomcat进程ID为:$TomcatID,继续检测页面..." # 检测是否启动成功(成功的话页面会返回状态"200") TomcatServiceCode=$(curl -s -o $GetPageInfo -m 10 --connect-timeout 10 $WebUrl -w %{http_code}) if [ $TomcatServiceCode -eq 200 ];then echo "[info]页面返回码为$TomcatServiceCode,tomcat启动成功,测试页面正常......" else echo "[error]tomcat页面出错,请注意......状态码为$TomcatServiceCode,错误日志已输出到$GetPageInfo" echo "[error]页面访问出错,开始重启tomcat" kill -9 $TomcatID # 杀掉原tomcat进程 #sleep 3 #rm -rf $TomcatCache # 清理tomcat缓存 #$StartTomcat fi else echo "[error]tomcat进程不存在!tomcat开始自动重启..." echo "[info]$StartTomcat,请稍候......" #rm -rf $TomcatCache $StartTomcat fi echo "------------------------------"
}
Monitor>>$TomcatMonitorLog
========monitor.sh结束=================
安装crontab
安装:yum install -y vixie-cron
若安装失败时:ngnix的某个资源报404可以如下操作:
cd /etc/yum.repos.d
vi ngnix.repo
把 http://nginx.org/packages/OS/OSRELEASE/$basearch/
改成http://nginx.org/packages/centos/6/$basearch/
这个地址是我在http://nginx.org/packages/下翻找出来的,当然最好你能看下是否和你的linux系统匹配
查看crontab是否安装成功
查看crontab任务列表:crontab -l
查看crontab状态:service crond status
启动crontab:service cron start
查看crontab是否自动启动
chkconfig | grep crond
crond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
查看2,3,4,5是否启动
其他常用命令
看是否设置开机自动启动:chkconfig —list crond
在CentOS系统中加入开机自动启动:chkconfig --level 35 crond on
Linux上监控tomcat down掉后自动重启tomcat相关推荐
- MYSQL死掉后自动重启脚本
最近服务器的MYSQL老是挂掉,而且经常是在半夜里挂掉! 真想骂娘! 兴许是由于配置文件设置的不够好,已经在调优.但调优期间也要做到无人值守自动化啊,所以有了下面这个脚本-- #!/bin/bash ...
- linux杀掉进程后总是重启,Linux监控进程,进程关闭自动重启方案
Linux监控进程,进程关闭自动重启方案 corntab+shell脚本检测进程 这个方案简单不用额外安装软件. 缺点是存在间隔,corntab设置1秒执行一次shell脚本也是存在间隔的 #!/bi ...
- Linux kernel Panic后自动重启机器的设置
Linux kernel Panic后自动重启机器的设置 方法1:内核配置命令行加入这句,崩溃后3秒重启: panic=3 make menuconfig 设置kernel系统参数: 方法2: vi ...
- 监控windows某个服务当服务停止后自动重启服务
近期花时间研究了一下windows和linux下某服务停了后自动重启的功能,在网上收集了些资料,并经过测试,在此整理一下.这里介绍的是windows服务的监控,是通过批处理来实现的.本例是监控wind ...
- 在linux上一行代码不用写实现自动采集+hadoop分词
在linux上一行代码不用写实现自动采集+hadoop分词 将下面的shell脚本保存成到xxx.sh,然后执行即可 cd /opt/hadoop mkdir spider wget -O spide ...
- linux进程监控自动重启,Linux监控进程,进程关闭自动重启方案
Linux监控进程,进程关闭自动重启方案 corntab+shell脚本检测进程 这个方案简单不用额外安装软件. 缺点是存在间隔,corntab设置1秒执行一次shell脚本也是存在间隔的 #!/bi ...
- 监控windows服务,当服务停止后自动重启服务
最近公司要实现java服务崩了,要自动重启服务.本例是监控windows的MySQL56为例,每秒60秒检测一次,当发现服务停止后自动重启. AutostartService.bat批处理文件内容如下 ...
- 关机状态下启动微型计算机叫什么,教你电脑关机后自动重启是什么原因
很多朋友都想要知道电脑关机后自动重启有什么原因,其实电脑关机后自动重启是非常简单,如果大家想要了解的话,小编当然会告诉大家电脑关机后自动重启的原因!下面就给大家带来电脑关机后自动重启原因的介绍吧. 小 ...
- 惠普服务器关机自动重启,惠普电脑关机后自动重启的具体解决办法游戏设备故障解决分享!...
今天小编要为大家解决的难题是惠普电脑关机后自动重启的问题,相信不少网友都是使用惠普电脑的,有兴趣的朋友不妨来参考一下,涨涨姿势. 惠普电脑关机后自动重启的解决方法一: 1.首先检查是不是硬件问题造成的 ...
最新文章
- ListView中加入Button后,Button的点击事件和ListView的点击事件冲突
- JAVA基础——时间Date类型转换
- LeetCode 148. 排序链表(归并排序、快速排序)
- 关于iOS7里的JavaScriptCore framework
- gsonformat插件_吐血推荐珍藏的IDEA插件
- 最近,4000余名工程师,集体重学数学!竟都只用这一招,快来!
- Nachos 用户进程地址分配
- mysql自动备份快结束很卡_mysql备份慢以及自动重启问题——调整NUMA
- Spring 分组验证
- python爬虫一:必应图片(从网页源代码中找出图片链接然后下载)
- 【大疆无人机OnboardSDK(三)妙算ssh远程控制台系统搭建】
- 静态电影网站模板A(html+css+js)
- 基于MFC的Media Player播放器的制作(4---功能实现代码)
- VSCode:一个温馨不扎眼的暗色主题推荐
- MySQL 算数表达式
- 中控 mysql_中控数据库教程
- flutter项目报错解决方案
- 2022年R1快开门式压力容器操作理论题库及答案
- 三阶魔方还原的13种程序实现
- 身家破亿!86版西游记“红孩儿”拒绝出道成学霸,已是中科院博士,名下52家公司...
热门文章
- Java23种设计模式之工厂模式
- Spring Cloud微服务之业务物理删除(十)
- GIT学习笔记1--基本使用
- 虚拟空间,域名解析,A记录,MX记录,CNAME记录,TTL 等 更多Web服务器相关名词解释
- Web流程图绘制使用raphael
- Linux Shell高级技巧(三)
- 从wordpress到octopress
- linux上ln命令详细说明
- centos7/rhel7重置root密码 (rd.break和init方法)
- SpringBoot——项目启动时读取配置及初始化资源