

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用通知政策
<a name="alert-notifications"></a>

****  
本文件主題專為支援 Grafana **8.x 版的 Grafana** 工作區而設計。  
如需支援 Grafana 10.x 版的 Grafana 工作區，請參閱[使用 Grafana 第 10 版](using-grafana-v10.md)。  
如需支援 Grafana 9.x 版的 Grafana 工作區，請參閱 [使用 Grafana 第 9 版](using-grafana-v9.md)。

通知政策會決定警示如何路由到聯絡點。政策具有樹狀結構，其中每個政策可以有一或多個子政策。除了根政策之外，每個政策也可以符合特定的提醒標籤。每個提醒都會由根政策評估，然後由每個子政策評估。如果您針對特定政策啟用 `Continue matching subsequent sibling nodes`選項，則即使在一或多個相符項目之後，評估仍會繼續。父政策的組態設定和聯絡點資訊會管理不符合任何子政策的提醒行為。根政策會管理不符合特定政策的任何提醒。

**注意**  
您可以建立和編輯 Grafana 受管警示的通知政策。Alertmanager 警示的通知政策為唯讀。

**分組通知**

分組會將類似性質的提醒通知分類為單一漏斗。這可讓您在系統許多部分一次故障時控制較大中斷期間的提醒通知，進而同時啟動大量提醒。

**分組範例**

假設您有 100 個服務連接到不同環境中的資料庫。這些服務會依標籤 區分`env=environmentname`。已制定提醒規則，以監控您的服務是否可以到達資料庫。提醒規則會建立名為 的提醒`alertname=DatabaseUnreachable`。

如果發生網路分割區，其中一半的服務無法再連線到資料庫，則會啟動 50 個不同的提醒。在這種情況下，您想要接收單頁通知 （而不是 50)，其中包含受影響的環境清單。

您可以將分組設定為 `group_by: [alertname]`（不使用 `env`標籤，這對於每個服務都不同）。設定此組態後，Grafana 會傳送單一精簡通知，其中包含此提醒規則的所有受影響環境。

**特殊群組**

Grafana 有兩個特殊群組。預設群組會將`group_by: null`*所有*警示分組為單一群組。您也可以使用名為 的特殊標籤`...`，依所有標籤分組提醒、有效停用分組，並將每個提醒傳送到自己的群組。

## 使用通知
<a name="alert-notifications-working"></a>

下列程序說明如何建立和管理通知政策。

**編輯根通知政策**

1. 在 Grafana 主控台的 Grafana 功能表中，選擇**警示 **（鈴鐺） 圖示以開啟**警示**頁面。

1. 選擇**通知政策**。

1. 從 **Alertmanager** 下拉式清單中，選取您要編輯的 Alertmanager。

1. 在**根政策**區段中，選擇**編輯**圖示 （筆）。

1. 在**預設聯絡點**中，更新當提醒規則不符合任何特定政策時，應為規則傳送通知的聯絡點。

1. 在**分組依據**中，選擇要分組提醒依據的標籤 （或特殊群組）。

1. 在**時間選項**中，從下列選項中選取 。
   + **群組等待** – 在傳送初始通知之前，等待緩衝相同群組警示的時間。預設為 30 秒。
   + **群組間隔** – 群組的兩個通知之間的最短時間間隔。預設值為 5 分鐘。
   + **重複間隔** – 如果沒有將新警示新增至群組，則重新傳送通知之前的最短時間間隔。預設值為 4 小時。

1. 選擇**儲存**，以儲存變更。

**新增最上層特定政策**

1. 在 Grafana 主控台的 Grafana 功能表中，選擇**警示 **（鈴鐺） 圖示以開啟**警示**頁面。

1. 選擇**通知政策**。

1. 從 **Alertmanager** 下拉式清單中，選取您要編輯的 Alertmanager。

1. 在**特定路由**區段中，選擇**新增特定政策**。

1. 在**相符標籤**區段中，新增一或多個相符提醒標籤。有關標籤比對的詳細資訊，請參閱本主題的後文。

1. 在**聯絡點**中，如果提醒符合此特定政策，請新增要傳送通知的聯絡點。巢狀政策會覆寫此聯絡點。

1. 選擇性地選取**覆寫群組**，以指定與根政策不同的群組。

1. 選擇性地選取**覆寫一般時間**，以覆寫群組通知政策中的時間選項。

1. 選擇**儲存政策**以儲存變更。

**新增巢狀政策**

1. 展開您想要在其下建立巢狀政策的特定政策。

1. 選擇**新增巢狀政策**，然後新增詳細資訊 （如同新增最上層特定政策時）。

1. 選擇**儲存政策**以儲存變更。

**編輯特定政策**

1. 在**提醒**頁面中，選擇**通知政策**以開啟列出現有政策的頁面。

1. 選取您要編輯的政策，然後選擇**編輯**圖示 （筆）。

1. 進行任何變更 （如同新增最上層特定政策時）。

1. 選擇 **儲存政策**。

**標籤比對的運作方式**

如果警示的標籤符合政策上指定的所有*相符標籤*，則政策會比對警示。
+ **Label** – 要比對的標籤名稱。它必須完全符合提醒的標籤名稱。
+ **Operator** – 用來比較標籤值與相符標籤值的運算子。可用的運算子包括：
  + `=` 選取其值完全符合所提供字串的標籤。
  + `!=` 選取其值不符合所提供字串的標籤。
  + `=~` 選取其值符合所提供字串之 regex 解譯值的標籤 （提供的字串會解譯為規則表達式。
  + `!=` 選取不符合所提供規則表達式的標籤。
+ **值** – 符合標籤值的值。它可以比對為字串或規則表達式，視所選的運算子而定。

## 靜音計時
<a name="alert-notification-muting"></a>

靜音計時是政策未產生或傳送新通知的週期性時間間隔。使用它們來防止警示觸發特定和重複發生的期間，例如定期維護期間。

與靜音類似，靜音計時不會阻止評估警示規則，也不會阻止警示執行個體顯示在使用者介面中。它們只會防止通知建立。

您可以設定 Grafana 受管靜音計時，以及外部 Alertmanager 資料來源的靜音計時。

**相較於靜音的靜音計時**

下表重點介紹靜音時間和靜音之間的差異。


| 靜音計時 | 靜音 | 
| --- | --- | 
|  使用可重複發生的時間間隔定義  |  有固定的開始和結束時間  | 
|  已建立 ，然後新增至通知政策  |  使用標籤來比對提醒，以判斷是否靜音  | 

**建立靜音計時**

1. 在 Grafana 主控台的 Grafana 功能表中，選擇**警示 **（鈴鐺） 圖示以開啟**警示**頁面。

1. 選擇**通知政策**。

1. 從 **Alertmanager** 下拉式清單中，選取您要編輯的 Alertmanager。

1. 在**靜音計時**區段中，選擇**新增靜音計時**按鈕。

1. 選擇您要套用靜音調整的時間間隔。

1. 選擇**提交**以建立靜音計時。

**將靜音時間新增至通知政策**

1. 選取您要新增靜音時間的通知政策，然後選擇**編輯**按鈕。

1. 從**靜音時間**下拉式清單中，選取要新增至政策的靜音時間。

   選擇**儲存政策**按鈕。

**時間間隔**

時間間隔是一段時間範圍內的定義。如果在此間隔期間啟動提醒，則會予以隱藏。使用 支援範圍 `:`（例如，`monday:thursday`)。靜音計時可包含多個時間間隔。時間間隔包含多個欄位 （詳細資訊請參閱下列清單），所有欄位都必須相符才能隱藏提醒。例如，如果您指定星期幾`monday:friday`和時間範圍為 8：00-9：00，則警示會在週一至週五的 8-9 之間隱藏，但不會在週六的 8-9 之間隱藏。
+ **時間範圍** – 一天中隱藏通知的時間。包含兩個子欄位，**開始時間**和**結束時間**。範例時間為 `14:30`。時間以 24 小時表示，以 UTC 表示。
+ **星期幾** – 星期幾。可以是一天，例如 `monday`、範圍，例如 `monday:friday`，或逗號分隔的天數清單，例如 `monday, tuesday, wednesday`。
+ **月** – 要選取的月。您可以使用數字指定來指定月份，或使用完整月份名稱來指定月份，例如，`1`或`january`同時指定一月。您可以指定單一月份、月份範圍或以逗號分隔的月份清單。
+ **當月天數** – 一個月內的日期。值的範圍可以是 `1`-`31`。負值會以相反順序指定月份的天數，因此 `-1`代表該月的最後一天。月份的天數可以指定為一天、天數範圍或逗號分隔的天數清單。