

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

# 根據異常偵測建立 CloudWatch 警示
<a name="Create_Anomaly_Detection_Alarm"></a>

您可以建立以 CloudWatch 異常偵測為基礎的警示，此警示會分析過去的指標資料並建立預期值的模型。預期值會將指標中每小時、每日和每週模式列入考慮。

您可以設定異常偵測臨界值，CloudWatch 會使用此臨界值搭配模型，以決定指標的「正常」範圍。較高的臨界值會產生較厚的「正常」值範圍。

您可以選擇警示觸發時機是在指標值超過預期值範圍、低於範圍，或者兩者擇一。

您也可以使用它根據指標數學表達式的單一指標和指標輸出來建立異常偵測警示。您可以使用這些表達式來建立可視化異常偵測頻段的圖形。

在設定為 CloudWatch 跨帳戶可觀測性監控帳戶的帳戶中，除了監控帳戶中的指標之外，您還可以針對來源帳戶中的指標，建立極端值偵測器。

如需詳細資訊，請參閱[使用 CloudWatch 異常偵測](CloudWatch_Anomaly_Detection.md)。

**注意**  
如果您在指標主控台中，因視覺化目的正在對指標使用異常偵測，並對該相同指標建立異常偵測警示，則您為警示設定的閾值不會改變您已為視覺化設定的閾值。如需詳細資訊，請參閱[建立圖形](graph_a_metric.md#create-metric-graph)。

**建立以異常偵測為基礎的警示**

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1.  在導覽窗格中，選擇 **Alarms** (警示)、**All alarms** (所有警示)。

1.  選擇 **Create alarm** (建立警示)。

1.  選擇 **Select Metric** (選取指標)。

1. 執行以下任意一項：
   +  選擇包含指標的服務命名空間，然後繼續選擇顯示的選項以縮小選項範圍。出現指標清單時，請選取指標旁的核取方塊。
   +  在搜尋方塊中，輸入指標名稱、維度或資源 ID。選取其中一個結果，然後繼續選擇出現的選項，直到出現指標清單為止。選取指標旁的核取方塊。

1.  選擇**圖表化指標**。

   1.  (選用) 在*統計數字*下，選擇下拉式清單，然後選取其中一個預先定義的統計數字或百分位數。您可以使用下拉式清單中的搜尋方塊，指定自訂百分位數，例如 **p95.45**。

   1.  (選用) 在*期間*下，選擇下拉式清單，然後選取其中一個預先定義的評估期間。
**注意**  
 CloudWatch 評估警示時，會將期間彙總為單一資料點。若是異常偵測警示，評估期間必須為一分鐘或更久。

1.  選擇**下一步**。

1.  在 ***Conditions (條件)*** 下，指定以下內容：

   1. 選擇 **Anomaly detection (異常偵測)**。

       如果此指標的模型和統計資料已存在，CloudWatch 會在畫面上方的圖表中顯示異常偵測範圍的預覽。建立警示後，最多需要 15 分鐘，實際異常偵測範圍才會出現在圖表中。在這之前，您看到的範圍只是異常偵測範圍的大約值。
**提示**  
 若要在畫面上方查看較長時間範圍的圖表，請選擇頁面右上角的 **Edit** (編輯)。

       如果此指標的模型和統計資料尚未存在，CloudWatch 會在您完成建立警示後產生異常偵測範圍。如果是新模型，最多可能需要 3 小時，實際異常偵測範圍才會出現在圖表中。訓練新模型可能需要長達兩週的時間，這樣異常偵測範圍才能顯示更準確的預期值。

   1. **無論*指標*是何時的**，請指定何時觸發警示。例如，當指標大於、小於頻帶或位於頻帶範圍的外部 (任一方向)。

   1. 對於 **Anomaly detection threshold (異常偵測臨界值)**，請選擇用於異常偵測臨界值的數字。數字越大，「正常」值範圍越寬，對指標變化的容忍度越大。數字越小，範圍越窄，因此將以較小的指標偏差進入 `ALARM` 狀態。該數字不一定是整數。

   1. 選擇 **Additional configuration (其他組態)**。針對 **Datapoints to alarm (要警示的資料點)**，請指定 (資料點) 必須處於 `ALARM` 狀態多少評估期間，才會觸發警示。如果此處的兩個值相符，您便可以建立警示，在許多連續期間違規時移至 `ALARM` 狀態。

      若要建立 N 個中有 M 個警示，請針對小於第二個值之數字的第一個值指定數字。如需詳細資訊，請參閱[警示評估](alarm-evaluation.md)。

   1. 對於 **Missing data treatment** (遺失資料處理方式)，選擇警示在遺失某些資料點時的行為。如需詳細資訊，請參閱[設定 CloudWatch 警示如何處理遺失資料](alarms-and-missing-data.md)。

   1. 若警示使用百分位數作為監控統計資料，則會出現一個 **Percentiles with low samples (低樣本的百分位數)** 方塊。請使用它來選擇是要評估還是忽略具有低抽樣率的案例。若您選擇 **Ignore (maintain alarm state)** (忽略 (維持警示狀態))，則會在抽樣大小過低時一律維持目前的警示狀態。如需詳細資訊，請參閱[以百分位數為基礎的警示和低資料範例](percentiles-with-low-samples.md)。

1.  選擇**下一步**。

1. 在 **Notification (通知)** 下，選取 SNS 主題來在警示處於 `ALARM` 狀態、`OK` 狀態或 `INSUFFICIENT_DATA` 狀態時進行通知。

   若要針對相同的警示狀態或不同警示狀態傳送多個通知，請選擇 **Add notification** (新增通知)。

   如果您不想要警示傳送通知，則請選擇 **Remove** (移除)。

1. 您可以設定警示在變更狀態時執行 EC2 動作或調用 Lambda 函數，或在進入警示狀態時建立 Systems Manager OpsItem 或事件。若要進行此操作，請選擇適當的按鈕，然後選擇警示狀態及要執行的動作。

   如果選擇 Lambda 函數作為警示動作，則可以指定函數名稱或 ARN，並且可以選擇性地選擇函數的特定版本。

   如需有關 Systems Manager 動作的詳細資訊，請參閱[設定 CloudWatch 以從警示建立 OpsItems](https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-create-OpsItems-from-CloudWatch-Alarms.html) 和[事件建立](https://docs.aws.amazon.com/incident-manager/latest/userguide/incident-creation.html)。
**注意**  
若要建立執行 AWS Systems Manager Incident Manager 動作的警示，您必須擁有特定許可。如需詳細資訊，請參閱 [AWS Systems Manager Incident Manager 的身分型政策範例](https://docs.aws.amazon.com/incident-manager/latest/userguide/security_iam_id-based-policy-examples.html)。

1.  選擇**下一步**。

1.  在 ***Name and description*** (名稱和描述) 下，輸入警示的名稱和描述，然後選擇 **Next** (下一步)。此名稱只能包含 UTF-8 字元，不能包含 ASCII 控制字元。說明可以包括 Markdown 格式，僅在 CloudWatch 主控台的警示**詳細資訊**標籤中顯示。Markdown 對於將連結新增至執行手冊或其他內部資源很實用。
**提示**  
 此警示名稱只能包含 UTF-8 字元，不能包含 ASCII 控制字元。

1.  在 ***Preview and create*** (預覽及建立) 下，請確認警示資訊和條件都是正確的，然後選擇 **Create alarm** (建立警示)。

## 編輯異常偵測模型
<a name="Modify_Anomaly_Detection_Model"></a>

建立警示後，您就可以調整異常偵測模型。您可以在建立模型時排除某些期間。請務必從訓練資料中排除不尋常的事件，例如系統中斷、部署和假日。您也可以指定是否針對日光節約時間變更來調整模型。

**編輯警示的異常偵測模型**

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在導覽窗格中，選擇 **Alarms** (警示)、**All alarms** (所有警示)。

1. 選擇警示的名稱。如有需要，請使用搜尋方塊尋找警示。

1. 選擇**檢視**、**指標中**。

1. 在**詳細資訊**欄中，選擇 **ANOMALY\$1DETECTION\$1BAND** 關鍵字，然後在快顯視窗中選擇**編輯異常偵測模型**。  
![\[顯示 ANOMALY_DETECTION_BAND 快顯功能表的「圖形化指標」索引標籤。\]](http://docs.aws.amazon.com/zh_tw/AmazonCloudWatch/latest/monitoring/images/Anomaly_Detection_Edit.PNG)

1. 若要排除用於產生模型的時段，請依**結束日期**選擇行事曆圖示。然後選取或輸入要排除的訓練天數和時間，然後選擇 **Apply** (套用)。

1. 如果指標容易受到日光節約時間變更的影響，在 **Metric timezone (指標時區)** 方塊中選取適當的時區。

1. 選擇**更新**。

## 刪除異常偵測模型
<a name="Delete_Anomaly_Detection_Model"></a>

對警示使用異常偵測會累積 費用。作為最佳實務，如果警示不再需要異常偵測模型，請先刪除警示，然後再刪除模型。評估異常偵測警示時，我們會代表您建立任何缺失的異常偵測器。如果您刪除模型，而未刪除警示，警示會自動重新建立模型。

**刪除警示**

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在導覽窗格中，選擇 **Alarms** (警示)、**All alarms** (所有警示)。

1. 選擇警示的名稱。

1. 選擇 **動作**、**刪除**。

1. 在確認對話方塊中，選擇**刪除**。

**刪除已用於警示的異常偵測模型**

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1.  在導覽窗格中，選擇 **Metrics** (指標)，然後選擇 **All metrics** (所有指標)。

1.  選擇 **Browse** (瀏覽)，然後選取包含異常偵測模型的指標。您可以在搜尋方塊中搜尋指標，也可透過選擇選項來選取指標。
   +  (選用) 如果您使用原始介面，請選擇 **All metrics** (所有指標)，然後選擇包含異常偵測模型的指標。您可以在搜尋方塊中搜尋指標，也可透過選擇選項來選取指標。

1.  選擇 **Graphed metrics (圖表化指標)**。

1. 在**圖形化指標**索引標籤的詳細資訊****欄中，選擇 **ANOMALY\$1DETECTION\$1BAND** 關鍵字，然後在快顯視窗中選擇**刪除異常偵測模型**。  
![\[顯示 ANOMALY_DETECTION_BAND 快顯功能表的「圖形化指標」索引標籤。\]](http://docs.aws.amazon.com/zh_tw/AmazonCloudWatch/latest/monitoring/images/Anomaly_Detection_Edit.PNG)
   +  (選用) 如果您使用原始介面，請選擇 **Edit model** (編輯模型)。您將被導向至新的畫面。在新畫面上，選擇 **Delete model** (刪除模型)，然後選擇 **Delete** (刪除)。