本文由簡體中文內容自動轉碼而成。阿里雲不保證此自動轉碼的準確性、完整性及時效性。本文内容請以簡體中文版本為準。
Log Service支援聯合監控與無資料警示,本文將指導如何配置。
監控時效性說明
警示監控原理
基於警示的查詢時間範圍,根據檢查頻率定時執行配置的查詢語句,並將查詢結果作為警示條件的參數進行計算,如果計算結果為true,則觸發警示。
監控時效性問題分析
資料索引延遲:資料從寫入Log Service到被查詢之間存在延時,即便延時很低,也存在資料漏查的風險。
例如:警示執行時間為12:03:30,查詢範圍為相對一分鐘時,檢查頻率為固定間隔1分鐘。則查詢時間範圍為[12:02:30,12:03:30),對於12:03:29秒寫入的日誌,無法保證在12:03:30這個時間點查詢到。
查詢準確性:寫入包含同一分鐘不同時間的日誌時,由於Log Service的索引構建方式,可能會存在較晚的日誌的索引寫入較早的日誌時間點。
例如:警示執行時間為12:03:30,查詢範圍為相對一分鐘則為[12:02:30,12:03:30),如果在12:02:50秒寫入多條日誌,這些日誌的時間有12:02:20,12:02:50等,那麼這一批日誌的索引可能會落入12:02:20這個時間點,導致使用時間範圍[12:02:30,12:03:30)查詢不到日誌。
時效性最佳化建議
關聯多個查詢分析結果
Log Service警示監控系統將一個查詢和分析結果當作一個集合,並支援多個集合關聯監控,如下圖所示。

集合操作支援9種配置,具體如下所示:
集合操作 | 圖示 | 說明 |
不合并 | 
| 兩個集合之間無關聯。 集合A為查詢和分析結果,集合B僅在警示資訊中作為內容範本的變數被引用。 |
笛卡爾積 | 無 | 集合A與集合B任意資料互相交叉組合,一般用於過濾評估。 |
笛卡爾積 | 
| 集合B中的資料添加到集合A中,根據欄位對齊。 |
內聯 | 
| 集合A中僅保留在集合B中存在的資料,即集合B是集合A的白名單。 |
左聯 | 
| 在集合A中補充部分來自集合B的資訊,即集合B是A的維表。 |
右聯 | 
| 在集合B中補充部分來自集合A的資訊,即集合A是集合B的維表。 |
全聯 | 
| 集合A和集合B互相補充資訊。 |
左斥 | 
| 在集合A中刪除集合B中存在的資料,即集合B是集合A的黑名單。 |
右斥 | 
| 在集合B中刪除集合A中存在的資料,即集合A是集合B的黑名單。 |
笛卡爾積
樣本1
其他樣本
查詢統計0結果
查詢統計1結果
集合操作結果
當選擇集合操作為笛卡爾積時,集合操作結果如下:
$0.a | b | $1.a | c |
a1 | b1 | a1 | c1 |
a1 | b1 | a3 | c3 |
a2 | b2 | a1 | c1 |
a2 | b2 | a3 | c3 |
a5 | b5 | a1 | c1 |
a5 | b5 | a3 | c3 |
無資料警示
您可以使用無資料警示功能,避免採集過程中資料丟失無感知問題。例如您建立了一個警示監控規則用於監控各個主機的CPU指標,並希望發生如下情況時,收到警示通知。
具體配置如下所示:
查詢統計:例如統計CPU的使用率。
* | select promql_query_range('cpu_util') from metrics limit 1000
觸發條件:有資料匹配,value>95,嚴重度:中
當查詢和分析結果中存在value的值大於95時,觸發中層級的警示。
連續觸發閾值:當累計觸發的警示次數達到該值時,產生一條警示。
無資料警示:開啟無資料警示開關,並設定嚴重度和標註資訊。
開啟無資料警示功能後,如果查詢和分析結果中無資料的次數超過連續觸發閾值,將觸發警示。
無資料警示具備獨立的警示嚴重度和標註資訊。
頁面配置展示如下圖:

- 本頁導讀 (1, M)
- 關聯多個查詢分析結果
- 不合并
- 笛卡爾積
- 拼接
- 內聯
- 左聯
- 右聯
- 全聯
- 左斥
- 右斥