云監控統計日志服務(Log Service)中關鍵字的數量,并在關鍵字數量達到一定條件時報警,是日志的常見需求之一。通過本文您可以快速掌握日志關鍵字監控和設置報警的操作方法。
僅2022年09月13日22:00:00之前已訂購包年包月套餐(cms_edition)的用戶或已開通按量計費(cms_post)的用戶能使用日志監控功能。日志監控功能將于2024年09月14日下線,建議您使用企業云監控中的SLS日志監控替代。
前提條件
背景信息
日志服務中日志的樣例如下:
2017-06-21 14:38:05 [INFO] [impl.FavServiceImpl] execute_fail and run time is 100msuserid=
2017-06-21 14:38:05 [WARN] [impl.ShopServiceImpl] execute_fail, wait moment 200ms
2017-06-21 14:38:05 [INFO] [impl.ShopServiceImpl] execute_fail and run time is 100ms,reason:user_id invalid
2017-06-21 14:38:05 [INFO] [impl.FavServiceImpl] execute_success, wait moment ,reason:user_id invalid
2017-06-21 14:38:05 [WARN] [impl.UserServiceImpl] execute_fail and run time is 100msuserid=
2017-06-21 14:38:06 [WARN] [impl.FavServiceImpl] execute_fail, wait moment userid=
2017-06-21 14:38:06 [ERROR] [impl.UserServiceImpl] userid=, action=, test=, wait moment ,reason:user_id invalid
2017-06-21 14:38:06 [ERROR] [impl.ShopServiceImpl] execute_success:send msg,200ms
本文以監控日志段中關鍵字ERROR為例,為您介紹通過日志監控實現日志關鍵字的監控與報警的操作方法。Key為level,Value為具體的日志段。Key-Value格式如下表所示。
Key | Value |
level |
|
level |
|
level | 2017-06-21 14:38:06 [ERROR] [impl.ShopServiceImpl] execute_success:send msg,200ms |
操作步驟
(可選)授權云監控訪問日志服務的權限。
當您首次使用日志監控功能時,需要授權云監控訪問日志服務的權限。
登錄云監控控制臺。
在左側導航欄,選擇
。在云監控服務關聯角色對話框,單擊確定。
新建日志監控,監控level中包含關鍵字ERROR的日志。
在日志監控頁面,單擊左上角的新建日志監控。
在關聯資源頁面,設置日志服務相關參數,單擊下一步。
參數
描述
地域
日志服務中日志項目(日志Project)所在地域。
日志Project
日志服務中日志項目的名稱。
日志Logstore
日志服務中日志庫的名稱。
在監控項定義頁面,設置監控項相關參數,單擊下一步。
參數
描述
監控項
監控指標的名稱。
單位
監控項的單位。
計算周期
監控項的計算周期。單位:分鐘。取值:1、2、3、4、5、10、15、20、30、60。
統計方法
在計算周期內根據選定的統計方法對日志數據進行聚合處理。如果字段值是數值型,可以使用所有統計方法,否則只能使用計數和countps兩種聚合算法。取值:
計數:計算統計周期內指定字段數值的個數。
求和:計算1分鐘內指定字段數值之和。
最大值:計算統計周期內指定字段數值的最大值。
最小值:計算統計周期內指定字段數值的最小值。
平均值:計算統計周期內指定字段數值的平均值。
countps:計算統計周期內指定字段求count后的每秒平均值。
sumps:計算統計周期內指定字段求sum后的每秒平均值。
distinct:去重后計算統計周期內指定字段出現的次數。
擴展字段
為統計方法中的結果提供四則運算功能,例如:在統計方法中配置了HTTP狀態碼請求總數TotalNumber和HTTP狀態碼大于499的請求數5xxNumber,則可以通過擴展字段計算出服務端的錯誤率:5xxNumber/TotalNumber*100。
日志篩選
對日志數據進行過濾,相當于SQL中的where條件,例如:Key為level,Value中需要監控的關鍵字為ERROR,該參數設置為
level>=ERROR
。選擇過濾的日志字段名不能包含中文。
Group-By
對數據進行空間維度聚合,相當于SQL中的Group By。
根據指定的維度,對監控數據進行分組。如果Group By不選擇任何維度,則根據聚合方法對全部監控數據進行聚合。
關于Group By,請參見Group By子句。
Select SQL
將統計方法轉化成SQL語句,方便您理解數據的處理方式。
應用分組
應用分組的名稱。將該監控項添加到指定應用分組中。
在報警設置頁面,設置關鍵字ERROR的報警規則,單擊下一步。
參數
描述
規則名稱
報警規則的名稱。
規則描述
報警規則的主體。當監控數據滿足指定報警條件時,觸發報警規則。
報警級別
報警通知方式。取值:
電話+短信+郵件+WebHook
短信+郵件+WebHook
郵件+WebHook
連續幾次超過閾值后報警
連續幾次超過閾值后,報警聯系人組中的聯系人會收到報警通知。取值:1、3、5、10、15、30、60、90、120、180。
通道沉默周期
報警發生后未恢復正常,間隔多久重復發送一次報警通知。取值:5分鐘、15分鐘、30分鐘、60分鐘、3小時、6小時、12小時、24小時。
監控指標達到報警閾值時發送報警,如果監控指標在通道沉默周期內持續超過報警閾值,在通道沉默周期內不會重復發送報警通知;如果監控指標在通道沉默周期后仍未恢復正常,則云監控再次發送報警通知。
生效時間
報警規則的生效時間,報警規則只在生效時間內才會檢查監控數據是否需要報警。
報警回調
填寫公網可訪問的URL地址,云監控會將報警信息通過POST或GET請求推送到該URL地址,目前僅支持HTTP協議。關于報警回調的設置方法,請參見使用閾值報警回調。
在創建結果頁面,單擊關閉。
查看關鍵字ERROR的監控數據。
創建日志監控后,等待3~5分鐘。在日志監控頁面,單擊目標監控項對應操作列的圖標,查看監控圖表。
查看關鍵字ERROR的報警通知。
當日志服務中出現ERROR級別的日志時,您會收到報警通知。