Alert只有grafana V4.0以上。
Introduction(介紹)
Grafana中的alert允許在dashboard panels你附加一些規則。當你保存儀表板Grafana將提取的報警規則到一個單獨的報警規則庫和安排評審它們。
在"graph”面板的“Alert”選項卡中,您可以配置應該評估警報規則的頻率以及警報需要更改狀態並觸發通知的條件。
Execution
警報規則在Grafana后端的一個調度程序和查詢執行引擎中被評估,這是Grafana核心的一部分。現在只支持一些數據源。他們包括Graphite, Prometheus, InfluxDB and OpenTSDB。
Clustering
當前警報支持配置高可用性。從v4.2.0開始,當運行多個服務器時,警報通知會快速去除重復的。這意味着所有的警告在每個服務器上執行,但沒有重復的警告通知發送(deduping logic)。未來將引入適當的警報負載平衡。
Rule Config
目前只有graph面板支持報警規則但這將被添加到singlestat和表板以及在未來的版本。
Name & Evaluation interval
在這里,您可以指定警報規則的名稱,以及調度器應該多長時間對警報規則進行評估。
Conditions
目前唯一存在的條件類型是一個查詢條件,允許您指定查詢字母(metric里查詢語句的字母,代表哪個查詢語句)、時間范圍和聚合函數。
Query condition example
例:avg() OF query(A, 5m, now) IS BELOW 14:
avg()
:控制如何將每個serie 值降低到一個可以與閾值比較的值。 點擊該功能可以選擇另一個聚合函數。query(A, 5m, now)
:字母A代表從Metrics頁簽查詢A查詢條件語句。第二個參數定義了時間范圍,5m, now
意思從現在到現在的5分鍾。這是有用的,如果你想忽略最后2分鍾的數據。IS BELOW 14:定義的閾值和閾值的類型。你可以點擊
IS BELOW
改變閾值的類型
警報規則中使用的查詢不能包含任何模板變量。目前,我們只支持條件之間的AND\OR操作。
例如,我們有以下3個條件:條件:A(計算為true)或條件:B(計算為false)和條件:C(計算為:true),所以結果將被計算為((真或假)和true)= true。
我們計划在將來添加其他的條件類型,像其他警報一樣,您可以在您的條件和時間中包含另一個警報的狀態。
Multiple Series
如果一個查詢返回多個series,那么將對每個series進行聚合函數和閾值檢查。Grafana目前沒有做的是每系列的跟蹤警報規則。這一點在下面的場景中有詳細的含義。
- 報警條件查詢,返回2系列:Server1和Server2
- server1系列導致警報規則消防開關狀態Alerting
- 通知發送消息:load peaking (server1)
- 在一個相同的報警規則Server2序列的子序列評價也引起火災預警規則
- 由於警報規則已經處於狀態Alerting,所以沒有發出新通知。
所以你可以看到從上面的場景,當其他系列引起警惕火災如果規則已經在狀態報警,Grafana不會發出通知時,。為了改進對返回多個系列的查詢的支持,我們計划在將來的版本中跟蹤每個序列的狀態。
No Data / Null values
下面的條件,你可以配置返回沒有數據或空數據,規則評估引擎應該如何處理查詢。
No Data Option:If no data or all values are nul
NoData:設置警報規則狀態為空
Alerting:將警報規則狀態設置為報警
keep Last state:保持當前的警報規則狀態。
Execution errors or timeouts
下面的選項,如果處理超時錯誤:If execution error or timeout
Alerting:將警報規則狀態設置為報警
keep Last state:保持當前的警報規則狀態。
如果一個不可靠的 time series存儲,當查詢超時或隨機失敗時,您可以設置這個選項Keep Last State基本上忽略它們。
Notifications
在警告選項卡中,還可以指定警報規則通知,以及關於警報規則的詳細信息。這個消息可以包含任何信息,關於如何解決這個問題的信息,鏈接到runbook等。
實際的通知被配置並在多個警報之間共享。閱讀 notifications指南,了解如何配置和設置通知。
Alert State History & Annotations
警戒狀態的變化都被記錄在內部注釋Grafana的數據庫表。狀態更改可視為警報規則的圖形面板中的注釋。你也可以去alert的子State history中查看和clear history(清除歷史狀態)。
Troubleshooting
您可以做的第一級故障排除是點擊Test Rule按鈕。您將得到結果,您可以擴展到可以看到從查詢返回的原始數據的點。
進一步的診斷也可以通過檢查grafana服務器日志。如果不是錯誤,或者由於某種原因,日志什么也不說,您可以為某些相關組件啟用調試日志記錄。這是在Grafana的INI配置文件了。
Alert List Panel
這個新面板允許您顯示警報規則或警報規則狀態更改的歷史記錄。您可以根據您感興趣的狀態進行篩選。這個面板式儀表盤是非常有用的概述。
show
current state:當前的狀態。
recent state changes:最近的狀態。
Max items:顯示警告數目
Alerts form this dashboard:選擇只顯示當前dashboard的警告;不選擇顯示所有dashboard的警告。
state filter:顯示狀態變更的類型,不選擇,全部顯示。
Alert Notifications
當警報改變狀態時,它發出通知。每個警報規則可以有多個通知。但為了添加通知警報規則首先需要添加和配置通知渠道(可以是電子郵件,Pagerduty或其他集成)。這是從通知通道頁面完成的。
Notification Channel Setup
在Notification Channels上,單擊New Channel按鈕,轉到可以配置和設置新通知通道的頁面。
指定name和type,以及指定特定選項。您還可以測試通知以確保它正確地工作和安裝。
Send on all alerts
選中后,該選項將使該通知用於所有警報規則,現有的和新的。
Supported Notification Types
Grafana有下列通知類型:
啟用電子郵件通知你在grafana配置設置SMTP設置。電子郵件通知會將警報圖像的圖像上傳到外部圖像目的地,如果可用的話,或者在電子郵件中附加圖像的后退。