window服务器下监控tomcat服务脚本


win下服务器tomcat检查,检测tomcat端口是否挂掉,如果挂掉自动重启。脚本如下



#include <File.au3>
;tomcat目录
$tomcatDir = "C:\ovk\apache-tomcat-7.0.55\bin\"
;vlc目录
$vlcPath = "C:\Program Files\VideoLAN\VLC\vlc.exe"
;自办频道1 文件 文件名必须为ziban1.ts
$ziban1Path = "C:\pingdao\ziban1.ts"
;自办频道1 组播地址
$ziban1Dest = "238.1.1.36:3000"
;自办频道2 文件 文件名必须为ziban2.ts
$ziban2Path = "C:\pingdao\ziban2.ts"
;自办频道2 组播地址
$ziban2Dest = "238.1.1.37:3000"
;自办频道3 文件 文件名必须为ziban3.ts
$ziban3Path = "C:\pingdao\ziban3.ts"
;自办频道3 组播地址
$ziban3Dest = "238.1.1.38:3000"

;以下配置说明: 周一和周六的9:45 将会重启tomcat服务
;自动重启星期? 周三
$wday1 = 4
;自动重启星期? 周六
$wday2 = 7
;自动重启 小时? 3点
$hour1 = 11
;自动重启 分钟?  0分
$min1 = 27


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Opt("TrayMenuMode", 0)
Opt("TrayAutoPause", 0)
Opt("TrayIconHide", 0)
Opt("TrayIconHide", 0)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
TraySetToolTip("OSTV守护程序")
TrayTip("提示:", "OSTV服务程序已启动!", 10, 1)
Sleep(2000)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
While True
   Local $sDate = @YEAR & "-" & @MON & "-" & @MDAY
   if Not WinExists("TomcatOSTV") Then
      Run($tomcatDir & "startup.bat", $tomcatDir)
      TrayTip("警告:", "检测到tomcat未启动,已重新开启!", 10, 2)
      _FileWriteLog(@ScriptDir & "\" & $sDate & ".log", "TomcatOSTV Crashed!")
   EndIf

   if Not WinExists("ziban1.ts - VLC media player") Then
      Sleep(5000)
      if Not WinExists("ziban1.ts - VLC media player") Then
         TrayTip("警告:", "检测到自办频道1未启动,已重新开启!", 10, 2)
         Run($vlcPath & " " & $ziban1Path & " --loop --sout=#duplicate{dst=std{access=udp,mux=ts,dst=" & $ziban1Dest & "}}")
         _FileWriteLog(@ScriptDir & "\" & $sDate & ".log", "ziban1 Crashed!")
      EndIf
   EndIf

   if Not WinExists("ziban2.ts - VLC media player") Then
      Sleep(5000)
      if Not WinExists("ziban2.ts - VLC media player") Then
         TrayTip("警告:", "检测到自办频道2未启动,已重新开启!", 10, 2)
         Run($vlcPath & " " & $ziban2Path & " --loop --sout=#duplicate{dst=std{access=udp,mux=ts,dst=" & $ziban2Dest & "}}")
         _FileWriteLog(@ScriptDir & "\" & $sDate & ".log", "ziban2 Crashed!")
      EndIf
   EndIf

   if Not WinExists("ziban3.ts - VLC media player") Then
      Sleep(5000)
      if Not WinExists("ziban3.ts - VLC media player") Then
         TrayTip("警告:", "检测到自办频道3未启动,已重新开启!", 10, 2)
         Run($vlcPath & " " & $ziban3Path & " --loop --sout=#duplicate{dst=std{access=udp,mux=ts,dst=" & $ziban3Dest & "}}")
         _FileWriteLog(@ScriptDir & "\" & $sDate & ".log", "ziban3 Crashed!")
      EndIf
   EndIf
   Sleep(10000)
   if @WDAY == $wday1 Or @WDAY == $wday2 Then
      if @HOUR == $hour1 And @MIN == $min1 Then
         TrayTip("提示:", "已到预定时间,Tomcat服务会在20秒后重新启动!", 10, 1)
         _FileWriteLog(@ScriptDir & "\" & $sDate & ".log", "TomcatOSTV will restart in 20s!")
         Sleep(20000)
         Run($tomcatDir & "shutdown.bat", $tomcatDir)
         Sleep(10000)
         Run($tomcatDir & "startup.bat", $tomcatDir)
         TrayTip("提示:", "Tomcat服务启动成功!", 10, 1)
         _FileWriteLog(@ScriptDir & "\" & $sDate & ".log", "TomcatOSTV Restarted!")
         Sleep(20000)
      EndIf
   EndIf
WEnd

本文出自 “ghost” 博客,请务必保留此出处http://fangwei009.blog.51cto.com/5234706/1690177

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,针对您的问题,我可以提供以下的解决方案: 1. 监控WebLogic服务进程 您可以使用Windows自带的Tasklist命令或者第三方工具如Process Explorer或Process Monitor来监控WebLogic服务进程的运行状态。您可以编写一个简单的脚本,定期检查WebLogic服务进程的运行状态,如果进程已经停止或者异常退出,则触发重启脚本。 以下是一个检查WebLogic服务进程状态的例子: ``` @echo off setlocal set PROCESS_NAME=java.exe set WEBLOGIC_HOME=C:\Oracle\Middleware\wlserver_10.3 set DOMAIN_NAME=mydomain set SERVER_NAME=AdminServer tasklist /FI "IMAGENAME eq %PROCESS_NAME%" /FI "MEMUSAGE gt 0" | find /I "%PROCESS_NAME%" > nul if %ERRORLEVEL% NEQ 0 ( echo WebLogic process is not running, restarting... call "%WEBLOGIC_HOME%\user_projects\domains\%DOMAIN_NAME%\bin\startWebLogic.cmd" ) else ( echo WebLogic process is still running. ) ``` 2. 实现自动重启脚本 当WebLogic服务进程停止或异常退出时,您可以编写一个自动重启脚本来启动WebLogic服务进程。以下是一个简单的重启脚本的例子: ``` @echo off setlocal set WEBLOGIC_HOME=C:\Oracle\Middleware\wlserver_10.3 set DOMAIN_NAME=mydomain set SERVER_NAME=AdminServer call "%WEBLOGIC_HOME%\user_projects\domains\%DOMAIN_NAME%\bin\stopWebLogic.cmd" call "%WEBLOGIC_HOME%\user_projects\domains\%DOMAIN_NAME%\bin\startWebLogic.cmd" ``` 请注意,以上的示例脚本仅供参考,您需要根据实际情况进行相应的调整。 3. 定期运行脚本 为了实现定期运行监控和自动重启脚本,您可以使用Windows的Task Scheduler来定期运行脚本。您可以设置一个定时任务,每隔一段时间运行一次监控脚本,以确保WebLogic服务进程一直处于正常运行状态。 希望这些信息能够帮助到您,如果您有任何疑问,请随时提出。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值