检测Tomcate 出现卡死自动重启

在此之前要先把Tomcate做成服务,cmd命令才能去操作

若是系统自动安装的服务,可直接跳过这一步。但是需确定服务名称,以便在以后的步骤使用,如下图:

若是手动为tomcat设置服务,请按以下步骤进行:

1、进入tomcat目录下的bin目录,用记事本打开service.bat文件,找到set SERVICE_NAME=TOMCATXX这一句,把后面的值改成自己对tomcat设置的服务名,把PR_DISPLAYNAME的值设置为显示的服务名称,这个是在系统管理的服务里面中列表里显示的名字。

如设置信访系统,则设置为这样:

Set SERVICE_NAME=xfgl

Set PR_DISPLAYNAME=tomcat xfgl

保存。

2、在运行里输入“CMD”,进入命令控制台,使用cd命令转到tomcat目录下的bin目录,运行service.bat install命令,把tomcat设置为系统启动服务。

3、进入控制面板->管理工具->服务,在服务列表中找到“tomcat xfgl”一项,双击弹出窗口,把启动类型改为“自动”,确定保存。

开始编辑监测脚本

第一步:编辑一个简单的jsp页面用于测试Tomcate是否卡死 TestTomcate.jsp

<html>
<head><title>Hello World</title></head>
<%
String s="ok";
out.println(s);
%>
</body>
</html>

第二:编辑vbs脚本循环检测Tomcate   TestingTomcate.vbs  脚本会没60秒去访问一边jsp页面  如果访问失败则重启Tomcate并记录日志

on   error   resume   Next
Dim   a  

a   =   True

Dim   WshShell

set   WshShell   = wscript.createobject ("wscript.shell") 

Do   While   a    

Dim http
Set http = CreateObject("Microsoft.XMLHTTP")    
http.open "GET","http://localhost:33385/WebReport/TestTomcate.jsp", False
http.send

if   http.Status  >   299   then  

    WshShell.run("net   stop   Tomcat8  exit")

    WScript.Sleep(30000)    

    WshShell.run("net   start   Tomcat8  exit")

    Dim fs

    Set fs = CreateObject("Scripting.FileSystemObject")

    fs.CreateTextFile "C:\Tomcate8Testing\LogFile.txt",False

    set ts =fs.opentextfile("C:\Tomcate8Testing\LogFile.txt",8,true)

    ts.write "error code:"

    ts.write http.Status

    ts.write "-------error time:"

    ts.write now

    ts.writeblanklines 2

    ts.close

end   if    

WScript.Sleep(60000)

loop

第三:编辑bat脚本运行vbs脚本 TestingTomcate8.bat

@echo off  
start cmd /k "wscript.exe C:\Tomcate8Testing\TestingTomcate.vbs" 
exit

 

具体实施流程如下

第一:将TestTomcate.jsp 复制到 \Tomcat 8.0\webapps\WebReport  目录下

 

第二​​ :将Tomcate8Testing 文件夹放到 C盘根目录

 

第三 打开电脑  控制面板-->工具管理-->任务计划程序  新建任务

 

完成上面的操作就建立Tomcate的检测了  如果需要结束监测可以在任务里面结束

 

 

​​​​​

​​

 

posted on 2017-10-11 17:46  取个名字之麻烦  阅读(627)  评论(0)    收藏  举报