`
jsczxy2
  • 浏览: 1277283 次
  • 性别: Icon_minigender_1
  • 来自: 常州
文章分类
社区版块
存档分类
最新评论

LINUX下使用Shell自动监控tomcat并且执行重启操作

阅读更多

 

转自http://my.oschina.net/chinaearl/blog/111830,如有侵权,请通知我,我及时删除。

下面的文件名称为monitor.sh,如果没有执行权限请使用chmod 777 monitor.sh

[plain] view plaincopy
 
  1. #!/bin/sh  
  2.   
  3. # func:自动监控tomcat脚本并且执行重启操作  
  4. # author:danny  
  5. # date:02/20/2013  
  6. # DEFINE  
  7.   
  8. # 获取tomcat进程ID  
  9. TomcatID=$(ps -ef |grep tomcat |grep -w 'dw\/apache-tomcat-7.0.34\/conf'|grep -v 'grep'|awk '{print $2}')  
  10.   
  11. # tomcat启动程序(这里注意tomcat实际安装的路径)  
  12. StartTomcat=/home/dw/apache-tomcat-7.0.34/bin/startup.sh  
  13. #TomcatCache=/usr/apache-tomcat-5.5.23/work  
  14.   
  15. # 定义要监控的页面地址  
  16. WebUrl=http://haoyayi.eyar.com  
  17.   
  18. # 日志输出  
  19. GetPageInfo=/dev/null  
  20. TomcatMonitorLog=/tmp/TomcatMonitor.log  
  21.   
  22. Monitor()  
  23. {  
  24.   echo "[info]开始监控tomcat...[$(date +'%F %H:%M:%S')]"  
  25.   if [[ $TomcatID ]];then # 这里判断TOMCAT进程是否存在  
  26.     echo "[info]当前tomcat进程ID为:$TomcatID,继续检测页面..."  
  27.     # 检测是否启动成功(成功的话页面会返回状态"200")  
  28.     TomcatServiceCode=$(curl -s -o $GetPageInfo -m 10 --connect-timeout 10 $WebUrl -w %{http_code})  
  29.     if [ $TomcatServiceCode -eq 200 ];then  
  30.         echo "[info]页面返回码为$TomcatServiceCode,tomcat启动成功,测试页面正常......"  
  31.     else  
  32.         echo "[error]tomcat页面出错,请注意......状态码为$TomcatServiceCode,错误日志已输出到$GetPageInfo"  
  33.         echo "[error]页面访问出错,开始重启tomcat"  
  34.         #kill -9 $TomcatID  # 杀掉原tomcat进程  
  35.         #sleep 3  
  36.         #rm -rf $TomcatCache # 清理tomcat缓存  
  37.         #$StartTomcat  
  38.     fi  
  39.   else  
  40.     echo "[error]tomcat进程不存在!tomcat开始自动重启..."  
  41.     echo "[info]$StartTomcat,请稍候......"  
  42.     #rm -rf $TomcatCache  
  43.     #$StartTomcat  
  44.   fi  
  45.   echo "------------------------------"  
  46. }  
  47. Monitor>>$TomcatMonitorLog  



下面是的这段代码是监控tomcat是否运行,如果运行,则将其停止.文件名称本人叫做shutdown.sh

[plain] view plaincopy
 
  1. #!/bin/sh  
  2. TomcatID=$(ps -ef |grep hudson-3.01 |grep java | awk ' { print $2 } ')  
  3. echo "tomcat的pid为$TomcatID"  
  4. Monitor(){  
  5.         echo "[info]开始监控tomcat...[$(date +'%F %H:%M:%S')]"  
  6.         if [[ $TomcatID ]]  
  7. # 这里判断TOMCAT进程是否存在  
  8.            then  
  9.                 echo "tomca启动正常"  
  10.                 kill -9 $TomcatID  
  11.                 tempTomcatID=$(ps -ef |grep hudson-3.01 |grep java | awk ' { print $2 } ')  
  12.                 if [[ $tempTomcatID ]]  
  13.                         then  
  14.                         echo "停止失败"  
  15.                 else   
  16.                         echo "成功停止"  
  17.                 fi  
  18.         else  
  19.             echo "tomcat没有启动"  
  20.         fi  
  21. }  
  22.   
  23.   
  24. Monitor  



下面的代码是启动tomca并将其日志显示出来,文件名称本人叫做startup.sh

[plain] view plaincopy
 
  1. cd /home/test/hudson-3.01/bin && ./startup.sh && tail -f ../logs/catalina.out  
分享到:
评论

相关推荐

    linux系统Tomcat重启shell脚本

    Linux 系统 Tomcat 重启脚本判断日志超过一定大小自动重启,是指在 Linux 操作系统中使用 shell 脚本来监控 Tomcat 服务器的日志文件大小,当日志文件超过一定大小时,自动重启 Tomcat 服务器,以确保服务的稳定运行...

    tomcat自动重启脚本

    linux系统tomcat自动重启脚本:判断监控 tomcat日志catalina.out超过一定限度 自动重启tomcat

    Linux 监控tomcat,自动重启tomcat服务

    本文介绍了如何在Linux环境下编写一个简单的Shell脚本来监控Tomcat服务的状态,并在必要时自动重启服务。通过这种方式可以有效提高系统的稳定性及响应速度。同时,还介绍了相关的命令和工具,以及常见的问题和解决...

    Linux下shell脚本监控Tomcat的状态并实现自动启动的步骤

    最近公司需要在Linux下监控tomcat的服务,一旦tomcat服务存在异常或者宕机,重启tomcat保证服务的正常运行,由于Linux下有Shell脚本可以实现此效果,下面是Linux下shell脚本监控Tomcat的状态并实现自动启动的步骤。...

    linux shell脚本定时清理tomcat日志文件

    Linux shell 脚本是 Linux 操作系统中的一种自动化工具,可以自动执行一些重复性的任务。在本文中,我们使用 shell 脚本来实现 Tomcat 日志文件的切割和删除。 知识点三:cron 机制的应用 cron 机制是 Linux 操作...

    linux tomcat监听自动重启脚本

    为了解决这个问题,我们可以编写一个监控并自动重启Tomcat的Shell脚本来确保服务的高可用性。以下将详细介绍如何创建这样的脚本。 首先,我们需要理解Linux Shell脚本的基本结构。Shell脚本是Linux操作系统中的一种...

    shell脚本远程启动其他服务器的tomcat传输文件自动登录判断启动停止

    在这个场景中,shell脚本被用来组织和执行一系列步骤,包括登录远程服务器、传输文件、监控Tomcat服务的状态以及控制其启动和停止。 接下来是expect工具。Expect是一个用于自动化交互式进程的Tcl扩展,它可以模拟...

    监控网站,网站挂后重启tomcat

    每隔一段时间监控某个网站,如果三次检查失败,则检查tomcat,tomcat失败则重启,若tomcat不失败,不做操作(也可重启,脚本可控)。加到crontab里面就OK。有日志的。

    Tomcat定时启动与监控

    在Linux环境中,可以通过编写一个Shell脚本来自动化Tomcat的重启过程,再结合`cron`服务来安排定时任务。以下是一个示例的`tomcatstart.sh`脚本: ```bash #!/bin/bash pid=$(ps aux | grep tomcat | grep -v ...

    Tomcat停止与启动shell

    标题 "Tomcat停止与启动shell" 指的是一个用于管理Tomcat服务器的脚本,通常这个`restart.sh`文件是用来自动化Tomcat服务的启动和停止操作的。Tomcat是Apache软件基金会的一个开源项目,是一个广泛使用的Java ...

    使用JavaServiceWrapper设置tomcat作为linux服务并且开机自动启动.pdf

    ### 使用Java Service Wrapper设置Tomcat作为Linux服务并实现开机自动启动 #### 一、概述 在部署基于Java的应用服务器时,通常需要将Tomcat配置为系统服务,以便于管理和维护。传统的做法是通过编写shell脚本来...

    linux中设置tomcat自启动

    本文将详细介绍如何在Linux系统下配置Tomcat服务器,使其能够在系统启动时自动运行。 ### 一、以Root用户登录系统 在进行任何系统级别的操作之前,首先需要确保你具有足够的权限。通常,这意味着你需要以root用户...

    web应用执行shell操作服务器资源

    2. **Shell命令**:Shell是Unix/Linux系统中的一个命令行接口,允许用户通过输入命令来执行各种系统操作。通过Web应用执行Shell命令,可以实现如文件管理(创建、移动、删除、重命名)、进程控制(启动、停止、重启...

    tomcat启动shell

    在开发和运维过程中,通过编写Shell脚本可以自动化Tomcat的启动、停止和重启等操作,提高效率。 在描述中提到的博文链接指向了ITEYE博客上的一篇文章,尽管具体内容没有给出,但通常这类文章会详细介绍如何创建和...

    linux环境下编写shell脚本实现启动停止tomcat服务的方法

    总结来说,编写shell脚本管理Tomcat服务可以简化操作,提高效率,同时也可以作为自动化部署和监控的一部分。通过理解这个脚本的工作原理,你可以根据实际需求进行扩展,例如添加更多的自定义功能或集成到更大的系统...

    Linux Shell脚本实现检测tomcat

    在本篇文章中,我们将探讨如何利用Linux Shell脚本来实现对Tomcat应用服务器的检测与自动重启功能。 首先,我们需要了解Shell脚本的基本结构。一个Shell脚本通常以`#!/bin/bash`作为首行,这被称为Shebang,用来...

    Tomcat 6 Linux版.7z

    同时,理解如何使用`systemd`或`init.d`脚本来管理系统服务,实现Tomcat的开机启动和自动重启。 综上所述,这个7z文件包含的Tomcat 6 Linux版提供了一整套在Linux环境中运行Java Web应用的解决方案。从安装、配置到...

    linux与tomcat

    - **日志监控**:查看`logs`目录下的日志文件,监控Tomcat运行状态和错误信息。 - **性能优化**:根据服务器资源调整Tomcat的JVM参数,例如内存分配、线程池大小等。 总结来说,Linux是一套广泛应用的操作系统,...

    shell脚本发布jar包服务,war包服务

    在IT行业中,shell脚本是Linux或Unix系统中用于自动化任务的强大工具,而jar和war文件则是Java应用程序的标准打包格式。这篇博客文章标题为“shell脚本发布jar包服务,war包服务”,意味着它将介绍如何使用shell脚本...

Global site tag (gtag.js) - Google Analytics