所有正在运行的服务中的Batch Monitor状态更改?

时间:2014-06-25 10:14:21

标签: windows service monitor

如果Windows机器上的任何(来自所有)运行服务停止,是否可以捕获它?

作为参考,我目前有以下设置来监控特定服务:

@echo off


set checkservice=myservice

echo Monitoring if %checkservice% service stops...


:checkServiceRunning
for /F "tokens=3 delims=: " %%H in ('sc query "%checkservice%" ^| findstr "        STATE"') do (
  if /I "%%H" NEQ "RUNNING" (
   ECHO %checkservice% stopped on %computername% at %date% %time% >>ServiceLog.txt
ECHO %checkservice% stopped on %computername% at %date% %time%


   PING 1.1.1.1 -n 1 -w 60000 >NUL
  )
)


goto checkServiceRunning

pause

例如,是否有一个Windows日志文件可以报告停止服务,并且可以针对关键字重复检查日志文件,例如“停止”'或者'没有跑步' ?感谢。

1 个答案:

答案 0 :(得分:0)

您可以尝试Windows服务监控免费软件

https://www.netwrix.com/windows_services_monitoring_freeware.html

它能够监控指定的服务并为已停止的服务选择(重新启动计算机,发送电子邮件警报,启动服务,启动指定的程序)