Windows服务守护进程bat批处理脚本

线上运行的 windows 服务有时候可能会挂掉,又不确定挂掉的原因,目前的办法是在服务器上运行守护进程,监控服务一旦停止尽快重启,用一个 bat批处理来简单实现此监控:

Windows 服务守护进程 bat批处理脚本

@echo off
title "Elasticsearch 主服务(windows 服务)"守护进程【若需停止服务请先临时关闭此进程】
rem 定义循环间隔时间和监测的服务:
set secs=60
set srvname="es-master"
set showname="Elasticsearch 主服务"
 
echo.
echo ========================================
echo ==     查询计算机服务的状态,        ==
echo ==     每间隔%secs%秒种进行一次查询  ==
echo ==     如发现其停止,则立即启动      ==
echo ========================================
echo.
echo 此脚本监测的服务是:%showname%
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=
echo 检测时间:%date:~0,10% %time:~0,8%
rem 下面的命令用于延时,否则可能会导致 cpu 单个核心满载。
ping -n %secs% 127.0.0.1 > nul
goto chkit
:end 

Windows 服务守护进程 bat 批处理脚本

© 版权声明

☆ END ☆
喜欢就点个赞吧
点赞0 分享
图片正在生成中,请稍后...