監控windows服務,當服務停止後自動重啟服務

2021-07-22 22:40:57 字數 1549 閱讀 1350

近期花時間研究了一下windows和linux下某服務停了後自動重啟的功能,在網上收集了些資料,並經過測試,在此整理一下。這裡介紹的是windows服務的監控,是通過批處理來實現的。本例是監控windows的computer browser為例,每60秒檢測一次(可根據實際需要調整間隔),當發現服務停止後自動重啟。autostartservice.bat批處理檔案內容如下

@echo off

rem 定義迴圈間隔時間和監測的服務:

set secs=60

set srvname="softdog"

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

雙擊該批處理檔案,執行介面如下

****************************************

==         查詢計算機服務的狀態,     ==

==     每間隔60秒種進行一次查詢,     ==

==     如發現其停止,則立即啟動。     ==

****************************************

此指令碼監測的服務是:"computer browser"

如果computer browser停止後,該批處理檢測到後會重啟該服務,介面如下

****************************************

==         查詢計算機服務的狀態,     ==

==     每間隔60秒種進行一次查詢,     ==

==     如發現其停止,則立即啟動。     ==

****************************************

此指令碼監測的服務是:"computer browser"

computer browser 服務正在啟動 .

computer browser 服務已經啟動成功。

監控WINDOWS服務,當服務停止後自動重啟服務

監控windows的 automatic updates 為例,每60秒檢測一次 可根據實際需要調整間隔 當發現服務停止後自動重啟。新建乙個autostartservice.bat批處理檔案 內容如下 echo off rem 定義迴圈間隔時間和監測的服務 set secs 60 set srvna...

監控windows服務,當服務停止後自動重啟服務

近期花時間研究了一下windows和linux下某服務停了後自動重啟的功能,在網上收集了些資料,並經過測試,在此整理一下。這裡介紹的是windows服務的監控,是通過批處理來實現的。本例是監控windows的computer browser為例,每60秒檢測一次 可根據實際需要調整間隔 當發現服務停...

windows 啟停Oracle服務

c net start oracleservicemyoracle oracleservicemyoracle 服務正在啟動 oracleservicemyoracle 服務已經啟動成功。在正常情況下,資料庫即可隨之啟動,如果資料庫不能啟動,則可以通過sysdba身份連線進入資料庫,手工mount並...