天天看點

SLS新版告警入門——告警管理編排互動

概述

在之前的告警政策和行動政策相關的文章中,我們可以看到,為了配置各種政策邏輯,使用的都是類似的互動方式,即基于可視化圖的表單。本文主要來介紹一下政策圖相關的互動和配置。

編排架構基本介紹

一個典型的政策圖結構如下:

SLS新版告警入門——告警管理編排互動

可以看到,通常來說,有以下幾種節點:

  • 開始:表示該政策的開始
  • 結束(最下面):表示政策的結束
  • 結束(右側):表示政策的中斷
  • 條件節點
  • 業務節點:例如上圖中的行動組配置

結束(中斷)與繼續

跟在條件邏輯右側的結束節點,表示的是政策的中斷執行。除了結束之外,有些政策還可以添加繼續連結,表示繼續向下執行。

SLS新版告警入門——告警管理編排互動

例如上圖的結束節點,邏輯類似于如下的腳本:

SLS新版告警入門——告警管理編排互動

其中條件邏輯後面的結束,相當于是函數的 return 語句,是以不會繼續向下執行。

如果是繼續連結的話,如下圖所示:

SLS新版告警入門——告警管理編排互動

則相當于如下的腳本:

SLS新版告警入門——告警管理編排互動

是以即使滿足了if語句,依然會繼續向下執行。

政策繼承

告警政策繼承

目前隻有告警政策(包含路由合并、抑制和靜默)可以繼承。政策繼承相當于兩個政策的政策圖拼接起來。例如父政策如下:

SLS新版告警入門——告警管理編排互動

子政策如下:

SLS新版告警入門——告警管理編排互動

則最終子政策的效果相當于:

SLS新版告警入門——告警管理編排互動

是以可以看到,政策圖最下面的結束節點,隻是表示目前政策邏輯上的結束,假如目前政策有子政策的話,有可能會繼續執行子政策的。但是條件節點右側的結束,表示的是整個執行的中斷,是以如果比對了條件,就不會再繼續向西執行。

通過繼承實作全局靜默

政策繼承的一個非常便捷的用途就是用來實作全局靜默。例如有一個父政策

sls.root

,它有若幹個子政策例如

alert-policy-1

alert-policy-2

等等。假如某一天希望靜默掉所有

labels.env = test

即測試環境的告警的時候,就可以配置

sls.root

的靜默政策,進而對所有子政策都生效,而無需對每個子政策單獨配置。

SLS新版告警入門——告警管理編排互動

循環繼承

另一個問題就是循環繼承。假如 A 繼承 B,B 又繼承了 A,就會導緻繼承鍊上出現環。此時會從目前政策沿着繼承鍊向上,直到到達循環點。例如:

  • 使用的是政策 A,則最終效果是 B + A,因為 A 繼承自 B
  • 使用的是政策 B,則最終效果是 A + B,因為 B 繼承自 A

進一步參考

了解更多的資訊,可以參考 SLS 的官方文檔:

對我們工作感興趣的,可以通過如下方式了解更多,謝謝關注!

SLS新版告警入門——告警管理編排互動

繼續閱讀