本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
數字數據警報
本文件主題是針對支援 Grafana 10.x 版的 Grafana 工作區所設計。
如需支援 Grafana 9.x 版的 Grafana 工作區,請參閱。在 Grafana 第 9 版中工作
如需支援 Grafana 8.x 版的 Grafana 工作區,請參閱。在 Grafana 第 8 版中工作
本主題說明 Grafana 如何處理數值而非時間序列資料的警示。
在某些資料來源中,非時間序列的數值資料可以直接警示,或傳入伺服器端運算式 (SSE)。這樣可以在資料來源中實現更多處理和產生的效率,並且還可以簡化警示規則。對數值資料而非時間序列資料發出警示時,不需要將每個標示的時間序列減少為單一數字。相反,標記的數字返回到 Grafana 代替。
表格式資料
查詢表格式資料的後端資料來源支援此功能:
-
SQL 數據源,如 MySQL,郵政,MSSQL 和甲骨文。
-
以 Azure 庫斯托為基礎的服務:Azure 監視器 (記錄檔)、Azure 監視器 (Azure 資源圖形) 和 Azure 資料總管。
具有 Grafana 管理警示或 SSE 的查詢在下列情況下,會將這些資料來源視為數值:
-
在資料來源查詢中,「格式化為」選項設定為「資料表」。
-
從查詢返回給 Grafana 的表響應只包括一個數字(例如整型,雙精度,浮點數)列,以及可選的附加字符串列。
如果有字符串列,那麼這些列成為標籤。欄的名稱會變成標籤名稱,而每一列的值會變成對應標籤的值。如果返回多行,那麼每一行應該唯一標識它們的標籤。
範例
對於一個名為「DiskSpace」的 MySQL 表:
時間 | 主機 | Disk | PercentFree |
---|---|---|---|
2021-六月七日 |
Web1 |
/等 |
3 |
2021-六月七日 |
Web2 |
/var |
4 |
2021-六月七日 |
web3 |
/var |
8 |
... |
... |
... |
... |
您可以按時查詢資料篩選,但不會將時間序列傳回給 Grafana。例如,當可用空間少於 5% 時,會觸發每個主機、磁碟的警示:
SELECT Host , Disk , CASE WHEN PercentFree < 5.0 THEN PercentFree ELSE 0 END FROM ( SELECT Host, Disk, Avg(PercentFree) FROM DiskSpace Group By Host, Disk Where __timeFilter(Time)
此查詢會傳回下列表格回應至 Grafana:
主機 | Disk | PercentFree |
---|---|---|
Web1 |
/等 |
3 |
Web2 |
/var |
4 |
web3 |
/var |
0 |
在警示規則中使用此查詢做為條件時,將會發出警示非零值。因此,會產生三個警示例項:
標籤 | Status |
---|---|
{主機 = 網頁 1,磁盤 =/等} |
提醒 |
{主機 = 網站 2,磁盤 =/變種} |
提醒 |
{主機 = Web3,磁盤 =/變種} |
正常 |