Tomcat实时监控,防止服务错误异常及当机,并自动重启修复。

on   error   resume   Next       
Dim   a
a   =   True  
data="restart <span style="color:#ff6666;">tomcat8</span>------------>"  
set   WshShell   =   WScript.CreateObject("WScript.Shell") 
set fs =createobject("scripting.filesystemobject") 
Do   While   a      
set   http   =   CreateObject("Microsoft.XMLHTTP")      
http.open   "GET","<span style="color:#ff6666;">http://localhost/aeolusPro/oa/system/SysOnline</span>",false 
http.send       

if   http.Status   >   299   then         
set ts =fs.opentextfile("<span style="color:#3366ff;">D:\tomcat_sysMsg</span>" & date & ".txt",8,true) 
WshShell.Run("net   stop   <span style="color:#ff6666;">Tomcat8</span>")     
WScript.Sleep(10000)          
WshShell.Run("net   start   <span style="color:#ff6666;">Tomcat8</span>")       
ts.write data      
ts.write "error code:"     
ts.write http.Status      
ts.write "-------error time:"     
ts.write now      
ts.writeblanklines 2      
ts.close    
end   if       
WScript.Sleep(30000)  
loop

以上为vb脚本程序,进行实时监控,复制并保存为vbs格式文件。


http://localhost/aeolusPro/oa/system/SysOnline为指向的一个可能的页面,如果错误异常或者当机(现象:500错误、内存溢出、异常停止服务...等),判断页面返回的状态码,若状态不为200,则表示该页面未正常返回,可能是tomcat服务出了问题,随后自动重启tomcat服务,并记录日志,把日志记录在D盘,日志文件以tomcat服务名和当前日期命名。以上代码是每隔30秒访问一次被监控的页面。


另外:


为了防止服务器重启,vbs脚本不再继续运行,需将此vbs文件放入任务计划中,设置成“在系统启动时运行”即可。


同时,还有一种情况,就是进程中的程序,有时候会有假死的现象,即不能关闭、也不能开启的任何操作。这时候就需要在条件判断体中添加执行语句语句WshShell.Run("taskkill /F /im Tomcat8.exe /T"),将进程彻底删除。


如果嫌扫描检测的时间30秒太长,可以自行调整执行速度。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值