Zabbix 結合 bat 腳本實現多個應用程序狀態監控的方法

場景模擬:

國內有部分企業需要運行某些窗口程序(即.exe)來支撐重要的業務運作,一旦這些重要的窗口程序中斷瞭,那麼就會造成巨大的經濟損失或者影響工作效率,後果如此嚴重。所以想通過zabbix進行多程序狀態的監控,一旦這些重要的窗口程序中斷,裡面產生告警,通知運維人員去修復。

提前準備好,兩個bat腳本,findexe.bat(把要監控的exe程序做成自動發現),check_exe_status.bat(獲取監控exe程序的狀態)
第一步–準備bat腳本:

findexe.bat腳本的內容如下

@echo off

setlocal enabledelayedexpansion

set /a n=0

set /a n1=0

for %%i in (%*) do (set /a n+=1)

@echo {"data":[

for %%a in (%*) do (

set /a n1+=1

@echo {"{#SERVERNAME}":"%%a"

if !n1! neq !n! (

@echo },

) else (

@echo }

)

)

echo ]}

check_exe_status.bat腳本內容如下

@echo off

tasklist|findstr ^%1 >/NUL 2>&1

if %errorlevel% == 0 (

echo "running"

) else (

echo "norunning"

)

註意tasklist|findstr ^%1 >/NUL 2>&1這條命令是查詢監控程序exe有沒有運行的

第二步–制作監控模板

在這裡插入圖片描述

點擊添加,創建模板

然後在剛才的check_exe_status模板中,創建自動發現規則

在這裡插入圖片描述

圖中鍵值名為findexe,鍵值裡面的參數就是客戶要監控的多個進程,用雙引號括起來,中間用空格分割。

findexe[“firefox.exe chrome.exe xxxlll.exe”]

如果還有其他exe程序要監控,隻需要用空格分割,往後面填入即可。

接著在這個自動發現規則下,新建一個監控項原型。

在這裡插入圖片描述

原型的{#SERVERNAME}的值是固定的有第一步的findexe.bat中定義。

第三步–配置zabbix_agent.conf的自定義鍵值

在這裡插入圖片描述

腳本路徑自定義,自定義鍵值要和模板的命名一致

重啟zabbix_agent

第四步–驗證多個exe程序狀態

在這裡插入圖片描述

自動發現填入瞭三個exe程序名,其中xxxll.exe為不存在的exe,為瞭驗證效果,現在把firefox.exe程序關掉,看一下他的最新數據是否會顯示成norunning。

在這裡插入圖片描述

驗證成功。

到此這篇關於Zabbix 結合 bat 腳本實現多個應用程序狀態監控的方法的文章就介紹到這瞭,更多相關Zabbix結合 bat 腳本狀態監控內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: