监控windows服务,当服务停止后自动重启服务

转载地址:https://www.cnblogs.com/zuqing/p/5848192.html


@echo off
rem 定义循环间隔时间和监测的服务:
set secs=60
set srvname="ServerName"

echo.
echo ========================================
echo == 查询计算机服务的状态, ==
echo == 每间隔%secs%秒种进行一次查询, ==
echo == 如发现其停止,则立即启动。 ==
echo ========================================
echo.
echo 此脚本监测的服务是:%srvname%
echo.

if %srvname%. == . goto end

:chkit
set svrst=0
for /F "tokens=1* delims= " %%a in ('net start') do if /I "%%a %%b" == %srvname% set svrst=1
if %svrst% == 0 net start %srvname%
set svrst=
rem 下面的命令用于延时,否则可能会导致cpu单个核心满载。
ping -n %secs% 127.0.0.1 > nul
goto chkit

:end

双击该批处理文件,运行界面如下

========================================
== 查询计算机服务的状态, ==
== 每间隔%secs%秒种进行一次查询, ==
== 如发现其停止,则立即启动。 ==
========================================

此脚本监测的服务是:%srvname%


如果%srvname%停止后,该批处理检测到后会重启该服务,界面如下
========================================
== 查询计算机服务的状态, ==
== 每间隔%secs%秒种进行一次查询, ==
== 如发现其停止,则立即启动。 ==
========================================

此脚本监测的服务是:%srvname%

%srvname% 服务正在启动
%srvname% 服务已经启动成功。

 

新建一个AutostartService.bat,将上面文字粘贴进去,"ServerName"改成需要监控的服务即可


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 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、付费专栏及课程。

余额充值