大數據

SLS新版告警-告警屬性及其應用

前言

在配置告警的過程中,常常需要了解告警的上下文,告警來源,告警嚴重度等,這些都可以叫做告警的屬性。可以對其進行告警的管理,SLS新版告警包括監控和告警管理部分,其中監控部分主要是用來產生告警,既可以使用自定義告警規則來產生告警,也允許用戶使用外部監控系統(如Zabbix, Promethus,Grafana)來產生告警,對於各類的告警,SLS新版告警系統將這些告警的屬性進行了統一和規範,基於這個規範就可以藉助SLS新版告警的管理系統,來對告警進行統一的降噪處理,告警升級,分派通知等功能。

image.png

告警屬性介紹

說到告警,人們通常會關心告警來源,嚴重度怎麼樣,告警的一些簡單描述信息,通過這些信息來判斷需要進行哪些操作,在SLS新版告警中,對告警屬性指定了統一的規範,在告警管理的過程中會使用這些標準的告警屬性來進行降噪抑制通知等處理。

SLS新版告警的屬性根據主要包含以下幾部分內容,接下來本文將對告警屬性進行簡單的描述。

  • 監控規則
  • 告警信息
  • 告警規則策略配置信息
  • 開放告警配置
  • 查詢統計結果

監控規則

  • 阿里雲賬號ID:關聯的阿里雲主賬號ID。告警監控規則所在的阿里雲賬號ID或開放告警設置的阿里雲賬號ID。
  • 告警類型:支持如下告警類型
    • 告警監控規則:表示監控告警規則觸發的告警。
    • 開放告警:表示通過開放源接入的告警。
  • 所屬區域:指監控規則所在的項目的區域
  • 所屬項目:SLS新版告警監控規則是在某個項目下創建,這裡指規則所在的項目
  • 規則ID:在每個項目下,監控規則都有唯一的ID,作為告警規則的唯一標識
  • 規則名:監控規則的名字,可由用戶自定義

下面通過一個簡單的示意圖看下這些屬性,在一個項目下,點擊告警圖標,從告警列表中選取一個監控規則,點開詳情,即可看到規則名稱,在URL中可以看到規則ID等

image.png

告警信息

  • 告警狀態:支持狀態如下
    • 告警觸發:表示告警規則滿足觸發條件,並且滿足連續觸發閾值,會發出一條觸發的告警信息
    • 告警恢復:如果開啟了告警恢復通知,在規則上次評估滿足觸發條件,本次評估不滿足觸發條件時,會發出一條恢復的告警信息
  • 嚴重度:嚴重度支持嚴重報告五種嚴重度,在監控規則中可以配置告警嚴重度,支持靜態嚴重度和動態嚴重度的設置;對於靜態嚴重度度,同一個監控規則產生的所有告警(分組評估時可能產生多條告警)都會是設定的嚴重度,對於動態嚴重度,監控規則會根據評估時動態嚴重度設定的條件,不同的告警可能會有不同的嚴重度。
  • 標題:是監控規則的標註中指定的標題,
  • 描述:是監控規則的標註中指定的描述。
  • 標註:在監控規則中可以指定自定義的key和value,產生的告警會包含設定的標註信息,其中標題和描述是內置的標註。
  • 標籤:在監控規則如果使用了分組評估,分組評估指定的字段名會被自動添加到產生的告警的標籤中,比如分組評估自定義字段為host,在產生告警後,標籤中會包括host字段和值;同時也直指在告警規則中自定義標籤key和value;標籤可以作為告警指紋的一部分,標籤與標註的不同可以參考【鏈接
  • 時間相關的屬性
    • 觸發時間:是指本次告警觸發的時間
    • 首次觸發時間:所屬告警規則多次滿足觸發條件時,在未滿足觸發閾值時,告警不會發出;觸發次數滿足觸發閾值時,會將告警發送到告警管理,這裡的首次觸發時間是指,首次觸發時間
    • 恢復時間:告警開啟了恢復通知時,當評估時告警條件不滿足觸發條件時,會產生一條恢復告警信息,恢復時間即為評估時間。

以下可以通過一個例子來看下告警信息的內容,其中需要注意是標籤會包括分組評估字段和自定義字段,標註會包括內置字段(title和desc),自定義字段,非分組字段(如果打開了自動添加標註開關);

image.png

這裡的標籤和標註都可以引用一些集合查詢結果的變量,集合查詢結果數據可能有多行滿足觸發條件的,標籤和標註只能引用當前評估組內的第一行滿足觸發條件的值。例如:集合查詢結果如下,包含三條數據,觸發條件是有數據滿足err_cnt > 60,這裡第2,3條數據滿足觸發條件,這裡如果引用${domain}或${err_cnt},會取第二條數據的值xxxx.aliyun.com和72

[
  {"domain": "xxxx.aliyun.com", "err_cnt": "51"},
  {"domain": "yyyy.aliyun.com", "err_cnt": "72"},
  {"domain": "zzzz.aliyun.com", "err_cnt": "83"}
]

告警策略配置信息

  • 告警策略ID:監控規則或開放告警產生的告警,發送到告警管理系統後,會使用告警策略來進行合併靜默抑制等降噪處理,一個監控規則需要指定告警策略,來指定後續的降噪處理策略。
  • 行動策略ID:監控規則或開放告警產生的告警,在需要進行通知處理時,需要指定相應的行動策略。

下面通過一個例子,來看告警策略和行動策略的配置,下面展示的是同一個告警策略和行動策略在不同模式下的展示方式,告警策略ID是sls.builtin.dynamic,行動策略ID是alert.simple.8xxx

image.png

開放告警配置信息

  • 服務名:表示接入開放告警的服務名稱
  • 應用名:表示接入開放告警的應用名稱
  • 協議:表示接入開放告警的協議,如zabbix,promethus協議等
  • 接入區域:表示接入開放告警的區域

下面通過一個例子,來看下開放告警的這些配置,在開放告警服務中展示的是服務的名稱

image.png

點開應用按鈕,彈出應用界面,顯示是應用列表,顯示名稱和協議

image.png

點開接口按鈕,彈出接口配置,顯示地域協議

image.png

查詢統計結果

在自定義監控規則中,最多可以指定3個查詢,每個查詢包含查詢的類型,時間和結果,在告警管理中可以對每個查詢進行引用,包含查詢的時間,查詢分析語句,查詢目標,區域,權限等。對於3個查詢,分別可以用查詢統計0查詢統計1查詢統計2來引用,每個查詢的屬性如下:

  • 類型:支持如下查詢統計類型
    • 對日誌庫進行查詢統計時,取值為日誌庫
    • 對時序庫進行查詢統計時,取值為時序庫
    • 對資源數據進行查詢統計時,取值為資源數據
  • 區域:對日誌庫和時序庫進行查詢統計時,取值為監控目標所在的區域,對資源數據進行查詢統計時,無該參數。
  • 項目:對日誌庫和時序庫進行查詢統計時,取值為監控目標所屬的項目,對資源數據進行查詢統計時,無該參數。
  • 目標庫:監控的目標庫名稱
  • 查詢關聯的儀表盤:查詢統計關聯的儀表盤ID
  • 使用服務角色:查詢統計時的RAM角色標識
  • 查詢語句:對日誌庫和時序庫進行查詢統計時,取值為查詢和分析語句。對資源數據查詢時,無該參數。
  • 查詢起始時間:對日誌庫和時序庫進行查詢統計時,取值為查詢時間範圍的開始時間。例如2006-01-02 15:04:05。對資源數據查詢時,無此參數。
  • 查詢結束時間:對日誌庫和時序庫進行查詢統計時,取值為查詢時間範圍的結束時間。例如2006-01-02 15:04:05。對資源數據查詢時,無此參數。

下面以一個例子展示下參數,以下告警規則表示兩個查詢統計,可以在引用時使用查詢統計0,查詢統計1

image.png

點開第一個查詢,彈出的查詢統計頁面會顯示查詢的每個信息

image.png

告警屬性的應用

告警屬性是指在告警產生時,生成的告警的信息;這些告警的內容會被告警管理用來降噪處理,也可以在行動策略中進行分派通知等。在SLS新版告警中是通過可視化編輯的方式來進行告警策略和行動策略的編輯。

在告警策略中,主要包括路由合併策略,抑制策略和靜默策略;行動策略主要包括條件和行動組。

  • 路由合併策略可以使用告警屬性來設置合併基準,表示擁有某個共同告警屬性的告警會被合併進行通知;
  • 在抑制策略和靜默策略中,告警屬性主要用來設置條件,滿足條件時進行抑制和靜默;
  • 在行動策略中,告警屬性主要用來設置條件,當告警屬性滿足某些條件時,可以發送到指定的行動組。

下面一些例子,展示下告警屬性的使用

告警策略配置

在配置告警策略時,界面上可以選擇對路由合併策略,抑制策略,靜默策略進行配置

image.png

路由合併策略

在告警策略中,選擇路由合併策略,點擊合併基準,下來框可以選擇按照哪些告警屬性進行合併;

image.png

也可以選擇自定義,接著對告警屬性進行選擇,可以同時選擇多個屬性。

image.png

條件配置

在抑制策略,靜默策略,行動策略中都可以通過設定條件來進行相應的操作。

image.pngimage.pngimage.png

抑制策略

下面的例子展示的出現告警嚴重度大於等於高時,對告警嚴重度小於等於中的告警進行抑制

image.png

靜默策略

下面的例子展示的是告警屬性中的告警標題,為測試告警時,在2021-06-06 17:09:59到2021-06-06 18:09:59之間,即使告警觸發,也不執行行動策略,不進行通知。

image.png

行動策略

下面的例子展示是當時告警的嚴重度為嚴重時,發送語音給用戶A,當嚴重度小於等於高時,發送短信給用戶B;

image.png

總結

SLS新版告警對自定義告警規則和開放告警產生的告警屬性進行了統一和規範,使用這些告警屬性可以進行靈活的告警策略和行動策略的配置,特別是在各種條件的配置中可以實現很複雜的控制邏輯,滿足各類業務和場景的需求,在告警管理的路由合併,抑制,靜默中有很多的使用場景。

參考

  • 告警管理概述【鏈接
  • 創建告警策略【鏈接
  • 多種告警分組合並【鏈接
  • 告警抑制策略【鏈接
  • 告警靜默策略【鏈接
  • 條件節點的匹配模式【鏈接
  • 告警屬性參考【鏈接

進一步參考

image

Leave a Reply

Your email address will not be published. Required fields are marked *