Monitoring
Zabbix - Web 場景觸發。如何忽略第一次失敗的嘗試?
問題:
當站點無法訪問時觸發立即發送電子郵件。
系統:
Linux Debian Stretch,Zabbix 4.2.1。
Web場景的目前配置:
Scenario: Name: website.com Update interval: 30s Attempts: 3 Agent: Zabbix Steps: (just one) Name: website.com URL: http://website.com/page.php Follow redirects: checked Timeout: 30s
(其餘不變)
觸發器的目前配置:
Name: The website.com can't be reached! Expression: {VIRTUALMACHINE:web.test.fail[website.com].last(3m)}>0
(其餘不變)
解釋
如果站點在 3 分鐘內無法訪問(或最後 3 次檢查,每次檢查超時 30 秒),觸發器必鬚髮送電子郵件。我試圖以多種方式進行(如下*),但是當 zabbix 第一次檢測到問題時(而不是第 n 次嘗試),我嘗試的每個觸發表達式都會立即發送電子郵件通知。
* {VIRTUALMACHINE:web.test.fail[website.com].sum(#3)}>0 {VIRTUALMACHINE:web.test.fail[website.com].last(3m)}<>0 {VIRTUALMACHINE:web.test.rspcode[website.com,website.com].last(0)}#200 {VIRTUALMACHINE:web.test.fail[website.com].last(3)}#0 {VIRTUALMACHINE:web.test.fail[website.com].sum(#3)}>0 {VIRTUALMACHINE:web.test.fail[website.com].last(3)}>0 {VIRTUALMACHINE:web.test.fail[website.com].min(1)}>0
如果您給出答案,請解釋一下。隨意問。
解決方案/解決方法
我在每個觸發器上添加了標籤,並通過添加標籤條件編輯了電子郵件操作。
例如:
首先發送電子郵件操作:無法 ping 伺服器。
ACTION tab Conditions: Tag value server equals icmpping
(其餘不變)
二發郵件動作:無法訪問網站。
ACTION tab Conditions: Tag value server equals web OPERATIONS tab Default operation step duration: 3m Operation details: Steps = 2-2; Step duration = 0
(其餘不變)
Trigger expression: {VIRTUALMACHINE:web.test.fail[website.com].last()}>0
現在 Zabbix 將在檢測到網站關閉 3 分鐘後向我發送一條消息,如果問題在這 3 分鐘內得到解決,Zabbix 將不會發送電子郵件。