linux监测tomcat服务

原文链接:https://blog.csdn.net/qq_37936542/article/details/81086928

项目上线之后,tomcat服务器有时候会莫名其妙的挂掉,利用shell写一个看门狗程序,监测tomcat异常关闭后,重启服务器。

 

1:新建脚本文件,赋予权限


 
  1. touch start.sh

  2. chmod 755 start.sh

2:编写脚本文件


 
  1. #!/bin/sh

  2.  
  3. # 自动监控tomcat并且在异常时执行重启操作

  4.  
  5.  
  6. # 定义java环境变量

  7. export JAVA_HOME=/usr/local/myApp/jdk1.8

  8.  
  9.  
  10. # 获取端口号为8080的tomcat进程ID(考虑到有多个tomcat服务器,用8080关键词)

  11. # grep -v grep 排除grep命令自带的进程id

  12. # awk '{print $2}' 只保留结果中第二列的值

  13. pid=$(ps -ef |grep 8080|grep -v grep|awk '{print $2}')

  14.  
  15.  
  16. # tomcat启动脚本

  17. start=/usr/local/myApp/tomcat8080/bin/startup.sh

  18.  
  19.  
  20. # tomcat缓存

  21. cache=/usr/local/myApp/tomcat8080/work

  22.  
  23.  
  24. # tomcat链接地址

  25. url=http://localhost:8080

  26.  
  27.  
  28. # 监控时的日志输出

  29. log=/tmp/my.log

  30.  
  31.  
  32. #linux垃圾回收站

  33. hole=/dev/null

  34.  
  35.  
  36. function doIt()

  37. {

  38. if [ $pid ]

  39. then

  40. echo "tomcat进程ID存在"

  41. code=$(curl -s -o $hole -m 10 --connect-timeout 10 $url -w %{http_code}"\n") #测试链接是否可以正常访问

  42. if [ $code -eq 200 ]

  43. then

  44. echo "测试链接正常"

  45. else

  46. echo "测试链接失败,重启tomcat"

  47. kill -9 $pid # 杀掉进程

  48. sleep 5

  49. rm -rf $cache # 清理tomcat缓存

  50. $start

  51. fi

  52. else

  53. echo "tomcat进程id不存在,重启中...."

  54. rm -rf $cache

  55. $start

  56. fi

  57. echo "------------------------------"

  58. }

  59.  
  60. doIt>>$log #执行函数,并打印日志

 

3:设置定时执行start.sh文件

crontab -e

添加内容:

*/30 * * * * /tmp/mySh/start.sh   #每30分钟执行一次

 

4:启动定时任务


 
  1. service crond start #启动定时任务

  2.  
  3. service crond status #查看状态

  4.  
  5. service crond restart #重启定时任务

  6.  
  7. 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”,拉你进程序员技术讨论群.

posted @ 2018-07-19 14:35  前端视听  阅读(131)  评论(0编辑  收藏  举报