linux监测tomcat服务
原文链接:https://blog.csdn.net/qq_37936542/article/details/81086928
项目上线之后,tomcat服务器有时候会莫名其妙的挂掉,利用shell写一个看门狗程序,监测tomcat异常关闭后,重启服务器。
1:新建脚本文件,赋予权限
touch start.shchmod 755 start.sh
2:编写脚本文件
#!/bin/sh# 自动监控tomcat并且在异常时执行重启操作# 定义java环境变量export JAVA_HOME=/usr/local/myApp/jdk1.8# 获取端口号为8080的tomcat进程ID(考虑到有多个tomcat服务器,用8080关键词)# grep -v grep 排除grep命令自带的进程id# awk '{print $2}' 只保留结果中第二列的值pid=$(ps -ef |grep 8080|grep -v grep|awk '{print $2}')# tomcat启动脚本start=/usr/local/myApp/tomcat8080/bin/startup.sh# tomcat缓存cache=/usr/local/myApp/tomcat8080/work# tomcat链接地址url=http://localhost:8080# 监控时的日志输出log=/tmp/my.log#linux垃圾回收站hole=/dev/nullfunction doIt(){if [ $pid ]thenecho "tomcat进程ID存在"code=$(curl -s -o $hole -m 10 --connect-timeout 10 $url -w %{http_code}"\n") #测试链接是否可以正常访问if [ $code -eq 200 ]thenecho "测试链接正常"elseecho "测试链接失败,重启tomcat"kill -9 $pid # 杀掉进程sleep 5rm -rf $cache # 清理tomcat缓存$startfielseecho "tomcat进程id不存在,重启中...."rm -rf $cache$startfiecho "------------------------------"}doIt>>$log #执行函数,并打印日志
3:设置定时执行start.sh文件
crontab -e
添加内容:
*/30 * * * * /tmp/mySh/start.sh #每30分钟执行一次
4:启动定时任务
service crond start #启动定时任务service crond status #查看状态service crond restart #重启定时任务service crond stop #停止定时任务
5:查看定时任务
crontab -l
注意:某些自己用yum install xxx安装的系统命令,在shell脚本文件执行时可能会失效,这时候使用
which xxx 查看命令的安装目录,然后在shell脚本文件中使用绝对路径就ok了
参考文章:https://blog.csdn.net/zzq900503/article/details/50723191
关注「编程微刊」公众号 ,在微信后台回复「领取资源」,获取IT资源300G干货大全。
公众号回复“1”,拉你进程序员技术讨论群.
linux监测tomcat服务的更多相关文章
- Linux下tomcat服务
一:Linux下tomcat服务的启动.关闭与错误跟踪,使用PuTTy远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务:切换到tomcat主目录下的bin目录(cd usr/loca ...
- linux下tomcat服务的启动、关闭与错误跟踪
linux下tomcat服务的启动.关闭与错误跟踪,远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务: 1).启动tomcat服务 进入tomcat主目录下的bin目录,然后执行如下 ...
- linux下tomcat服务的相关命令
一:Linux下tomcat服务的启动.关闭与错误跟踪,使用PuTTy远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务:切换到tomcat主目录下的bin目录(cd usr/loca ...
- PuTTy linux下tomcat服务的相关命令
一:Linux下tomcat服务的启动.关闭与错误跟踪,使用PuTTy远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务:切换到tomcat主目录下的bin目录(cd usr/loca ...
- 转:Linux中tomcat服务成功发布但局域网浏览器无法访问
转自:http://blog.csdn.net/mooncom/article/details/53168143 昨天,我在搭建Linux中服务器环境时,碰见一个问题,这里和大家分享一下. 问题描述: ...
- Linux(CENTOS7) Tomcat服务成功发布但局域网浏览器无法访问
问题 : 我在linux搭建了一个tomcat服务器,tomcat开启后,发现在局域网浏览器上无法访问该tomcat,浏览器报无法访问服务器错误,我查看了tomcat的日志,路径..../tomcat ...
- linux篇-linux 下tomcat服务每天定时启动
1l先准备一个脚本 #!/bin/sh #./etc/profile export JAVA_HOME=/usr/java/jdk1.6.0_45 sh /home/tomcat-bingchuang ...
- Linux部署tomcat服务常用命令
cd / 转到根目录 ps -ef|grep tomcat查看进程 ./bin/shutdown.sh 关闭 rm -r logs/* 清除日志 ps -ef|grep tomcat查看进程 ./bi ...
- linux下启动和关闭tomcat服务的方式
Linux下tomcat服务的启动.关闭与错误跟踪,通常通过以下几种方式启动关闭tomcat服务: 切换到tomcat主目录下的bin目录 启动tomcat服务 生产模式: 方式一:直接启动 ./st ...
随机推荐
- IDEA中的maven web 项目中如何设置自己的本地仓库
我们在创建maven项目的时候如何不使用系统指定的本地仓库,而使用自己设置的仓库呢,这里小女子就来进行讲解一下吧! 讲解一:你要想找到settings.xml你就要自己我去官网上去下载apache-m ...
- Delphi的参数修饰const/var/output 与C++的对应关系
delphi的const/input和默认的没有修饰, C++都是一样的 delphi的var,对应C++那边是指针, 调用方需要管理内存(负责分配内存及销毁) delphi的output , 对应 ...
- Task Scheduler
https://technet.microsoft.com/en-us/library/cc748993(v=ws.11).aspx#BKMK_winui If Task Scheduler is n ...
- Integer 和 int的种种比较
public static void main(String[] args) { int i = 128; Integer i2 = 128; Integer i3 = new Integer(128 ...
- 129.C++面试一百题(1-51)
- 浅谈 C 语言中模块化设计的范式
今天继续谈模块化的问题.这个想慢慢写成个系列,但是不一定连续写.基本是想起来了,就整理点思路出来.主要还是为以后集中整理做点铺垫. 我们都知道,层次分明的代码最容易维护.你可以轻易的换掉某个层次上的某 ...
- Vuejs2.0构建一个彩票查询WebAPP(1)
说明:本人也是刚接触VUE.js,作为一个学习笔记,旨在与初学者共同学习.其中编程语法错误或者写作水平刺眼,还望轻喷. 使用工具:Visual Studio Code.技术栈为vue2+vuex+ax ...
- js预编译和函数执行
javascript 执行过程 1.语法检测(有没有基本的语法错误,例如中文,关键字错误...)2.词法分析(预编译) (1)创建全局GO(global object)对象 (2)对var声明的变量进 ...
- 昼猫笔记--什么是DOM
昼猫笔记--给你带来不一样的笔记 不止是笔记 更多的是思考 Hello,大家好,昼猫,今天来加深下DOM 什么DOM呢?它的全称叫 Document Object Model 通过全称可以知道它是 文 ...
- Activiti工作流框架学习(二)——使用Activiti提供的API完成流程操作
可以在项目中加入log4j,将logj4.properties文件拷入到src目录下,这样框架执行的sql就可以输出到到控制台,log4j提供的日志级别有以下几种: Fatal error war ...