熱門(mén)搜索 Zabbix技術(shù)資料 Zabbix常見(jiàn)問(wèn)、答討論 成功案例 Zabbix交流區(qū) Prometheus交流區(qū)
國(guó)內(nèi)某知名大型企業(yè)A公司,在使用開(kāi)源zabbix監(jiān)控平臺(tái)時(shí)發(fā)現(xiàn)zabbix只能依據(jù)告警級(jí)別產(chǎn)生相應(yīng)的聲音通知,卻無(wú)法對(duì)告警信息進(jìn)行語(yǔ)音播報(bào)。為此,運(yùn)維同事小東自告奮勇為公司打造了一套“零成本的最簡(jiǎn)單的zabbix語(yǔ)音告警”方案,實(shí)現(xiàn)與zabbix的告警對(duì)接,為公司省下10W+的運(yùn)維費(fèi)用。
1、軟硬件準(zhǔn)備
1)一臺(tái)帶有聲音的window操作系統(tǒng)的電腦,作為大屏展示zabbix系統(tǒng)告警的工具
2)一個(gè)zabbix_agent安裝包
3)一個(gè)bat腳本(調(diào)用window系統(tǒng)自帶的語(yǔ)音助手內(nèi)置工具)
4)Bat_To_Exe_Converter.exe。把bat腳本轉(zhuǎn)換成exe的工具。這個(gè)工具主要是為了解決bat腳本調(diào)用時(shí)會(huì)有彈窗的問(wèn)題(即使網(wǎng)上有命令可以把bat腳本放置后臺(tái)執(zhí)行,但是還是調(diào)用bat還是會(huì)有一瞬間窗口閃過(guò),所以需要通過(guò)該軟件把腳本放到后臺(tái)運(yùn)行)
2、實(shí)現(xiàn)原理
1)語(yǔ)音播放bat,讀取zabbix_server推送過(guò)來(lái)的告警標(biāo)題,調(diào)用系統(tǒng)內(nèi)置的語(yǔ)音助手,然后該bat參數(shù)接收一個(gè)參數(shù)為zabbix_server產(chǎn)生告警時(shí),傳過(guò)來(lái)的告警標(biāo)題。
2)把該語(yǔ)音告警播放bat腳本加到window的計(jì)劃任務(wù)中。注意:zabbix_agent的鍵值有些命令無(wú)法調(diào)用,這種情況可以考慮使用把腳本加入到計(jì)劃任務(wù),然后agent自定義鍵值調(diào)用對(duì)應(yīng)的計(jì)劃任務(wù)。具體原因可能時(shí)window操作系統(tǒng)的一些安全限制導(dǎo)致,可能把某些操作當(dāng)成病毒進(jìn)行攔截
3)安裝zabbix_agent。自定義一個(gè)鍵值命令,來(lái)調(diào)用window的語(yǔ)音告警播放的計(jì)劃任務(wù),用來(lái)把接收到的告警語(yǔ)音播放。
4)配置告警動(dòng)作,zabbix_server產(chǎn)生告警時(shí),執(zhí)行客戶端的命令具體為,zabbix_get -s ?客戶端的ip -k ‘語(yǔ)音告警的鍵值’。這樣的話,就可以實(shí)現(xiàn)告警產(chǎn)生后,調(diào)用大屏展示告警的那臺(tái)window的計(jì)劃任務(wù),然后由計(jì)劃任務(wù)把接受到的告警標(biāo)題語(yǔ)音播放出來(lái)。
注意:一般傳提告警標(biāo)題參數(shù)即可,很多告警標(biāo)題都判斷出具體告警,簡(jiǎn)潔明了
腳本內(nèi)容如下:
@echo off
for /f %%i in (‘type “G:\alert_mess.txt”‘) do (
??set “alert_mess=%%i”
)
腳本說(shuō)明:上面命令是必須,G:\alert_mess.txt是每次告警產(chǎn)生后,臨時(shí)存放告警標(biāo)題的文件,具體路徑可以自定義,這個(gè)文件之所以存在,是因?yàn)橛?jì)劃任務(wù)用cmd調(diào)用時(shí)無(wú)法傳入?yún)?shù),因此為了靈活調(diào)用。后續(xù)zabbix產(chǎn)生告警時(shí),會(huì)做兩個(gè)操作,第一個(gè)就是把告警標(biāo)題存放到G:\alert_mess.txt這個(gè)目錄,然后再調(diào)用上面的bat腳本,獲取文本中的告警標(biāo)題,進(jìn)行語(yǔ)音播放,播放完畢后,清空alert_mess.txt的內(nèi)容,等待下次告警的新內(nèi)容。
mshta vbscript:createobject(“sapi.spvoice”).speak(%alert_mess%)(window.close) ??
腳本說(shuō)明:上面命令時(shí)調(diào)用window自帶的語(yǔ)音助手,用于語(yǔ)音播報(bào)。alert_mess的內(nèi)容就是告警標(biāo)題的內(nèi)容,接收到的告警標(biāo)題是什么,語(yǔ)音播報(bào)就會(huì)播放什么
打開(kāi)軟件
注意:如果上面轉(zhuǎn)換不成功,可能會(huì)是系統(tǒng)自帶或者殺毒軟件攔截,可臨時(shí)關(guān)閉進(jìn)行轉(zhuǎn)換
快捷鍵,win+r,輸入taskschd.msc打開(kāi)計(jì)劃任務(wù)
開(kāi)啟agent的遠(yuǎn)程調(diào)用參數(shù)。Agent版本如果是3.X或者4.X,開(kāi)啟遠(yuǎn)程配置參數(shù)命令是EnbaleRemoteCommands=1。這個(gè)參數(shù)開(kāi)啟后,用于接收zabbix產(chǎn)生的告警標(biāo)題。
注意,下面我配置的環(huán)境是基于zabbix6.0的,如果是zabbix3-5版本配置可能存在差異。
添加下面的命令
/itops/zabbix/bin/zabbix_get -s 192.168.74.1 -k ‘system.run[echo “[產(chǎn)生告警]{HOST.IP}的{TRIGGER.NAME}”>G:\alert_mess.txt]’
注意:這個(gè)文件的路徑要和33.exe讀取的文件路徑一致
/itops/zabbix/bin/zabbix_get -s 192.168.74.1 -k ‘run’
注意:這個(gè)鍵值要和自定義鍵值一致
添加恢復(fù)告警,主要是為了語(yǔ)音告警時(shí),區(qū)別告警產(chǎn)生還是恢復(fù)
產(chǎn)生告警
恢復(fù)告警
語(yǔ)音播放視頻效果可通過(guò)下面鏈接查看,語(yǔ)音播報(bào)大概在37-44s。其他是觸發(fā)器尚未更新
鏈接:http://pan.baidu.com/s/1gd87dc02XtrfdUuW8KzyHw
提取碼:26pt
上面的腳本可以調(diào)整語(yǔ)速和音量,還有可以自行替換語(yǔ)音包。
以上就是這一期的zabbix運(yùn)維知識(shí)分享。大家好,我是樂(lè)樂(lè),專注運(yùn)維技術(shù)研究與分享,關(guān)注我學(xué)習(xí)zabbix等使用技巧,更多運(yùn)維問(wèn)題還可以到尊龍時(shí)凱社區(qū)留言提問(wèn)哦~
基于客戶醫(yī)院原有的運(yùn)維體系、運(yùn)維痛點(diǎn)和對(duì)監(jiān)控的需求,尊龍時(shí)凱為其量身打造了一套一站式智能運(yùn)維監(jiān)控解決方案,搭建統(tǒng)一監(jiān)控平臺(tái),引入智能化告警管理系統(tǒng)、可...
View details尊龍時(shí)凱監(jiān)控采取對(duì)網(wǎng)絡(luò)設(shè)備、服務(wù)器系統(tǒng)、數(shù)據(jù)庫(kù)、中間件、標(biāo)準(zhǔn)應(yīng)用、業(yè)務(wù)系統(tǒng)等IT業(yè)務(wù)資源綜合監(jiān)管的解決方案。
View details尊龍時(shí)凱以運(yùn)維監(jiān)控起家,具有十多年運(yùn)維產(chǎn)品經(jīng)驗(yàn),形成了非常成熟的運(yùn)維監(jiān)控解決方案。同時(shí),尊龍時(shí)凱緊跟信創(chuàng)國(guó)產(chǎn)化浪潮,積極推動(dòng)信創(chuàng)產(chǎn)品適配,融入信創(chuàng)生態(tài),能...
View details采用分布式實(shí)施,分別集中監(jiān)控線上(阿里云) IT基礎(chǔ)架構(gòu)和線下IT基礎(chǔ)架構(gòu),將不同類別的基礎(chǔ)架構(gòu)統(tǒng)一在一個(gè)平臺(tái)上實(shí)現(xiàn)監(jiān)控功能。分別對(duì)主機(jī)、網(wǎng)絡(luò)、存儲(chǔ)、數(shù)據(jù)...
View details