

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

# 建立複合警示
<a name="Create_Composite_Alarm"></a>

本節中的步驟說明如何使用 CloudWatch 主控台建立複合警示。您也可以使用 API 或 AWS CLI 來建立複合警示。如需詳細資訊，請參閱 [PutCompositeAlarm](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutCompositeAlarm.html) 或 [put-composite-alarm](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudwatch/put-composite-alarm.html) 

**建立複合警示**

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

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

1. 從警示列表選取您要在規則表達式中參照的每個現有警示旁的核取方塊，然後選擇 **Create composite alarm** (建立複合警示)。

1. 在 **Specify composite alarm conditions** (指定複合警示條件) 中，指定新複合警示的規則表達式。
**注意**  
您從警示清單中選取的警示會自動列在 **Conditions** (條件) 方框中。在預設情況下，`ALARM` 函數已指定給您的每個警示，且每個警示都由邏輯運算子 `OR` 串聯。

   您可以使用下列子步驟來調整您的規則表達式：

   1. 您可以從以下位置將每個警示的必要狀態從 `ALARM` 變更至 `OK` 或 `INSUFFICIENT_DATA`。

   1. 您可以將規則表達式中的邏輯運算子從 `OR` 變更至 `AND` 或 `NOT`，也可以加入括號來分組函數。

   1. 您可以在規則表達式中加入其他警示，或從規則表達式中刪除警示。

   **範例：具有條件的規則表達式**

   ```
   (ALARM("CPUUtilizationTooHigh") OR 
   ALARM("DiskReadOpsTooHigh")) AND 
   OK("NetworkOutTooHigh")
   ```

   在此範例規則表達式中，當 ALARM("CPUUtilizationTooHigh") 或 ALARM("DiskReadOpsTooHigh") 處於 `ALARM`，且 OK("NetworkOutTooHigh") 同時處於 `OK` 時，複合警示進入 `ALARM` 狀態。

1. 完成時，請選擇**下一步**。

1. 在 **Configure actions** (設定動作) 中，您可以從下列項目選擇：

   對於 ***Notification*** (通知)
   + **Select an exisiting SNS topic** (選取現有的 SNS 主題)、**Create a new SNS topic** (建立新 SNS 主題)，或是 **Use a topic ARN** (使用主題 ARN) 來定義將接收通知的 SNS 主題。
   + **Add notification** (新增通知) 以針對相同的警示狀態或不同警示狀態傳送多個通知。
   + **Remove** (移除) 以停止警示傳送通知或採取動作。

   (選用) 若要讓警示在變更狀態時調用 Lambda 函數，請選擇**新增 Lambda 動作**。然後指定函數名稱或 ARN，並選擇性地選擇函數的特定版本。

   對於 ***Systems Manager action*** (Systems Manager 動作)
   + **Add Systems Manager action** (新增 Systems Manager 動作)，以讓您的警示在進入 ALARM (警示) 狀態時可以執行 SSM 動作。

   若要進一步了解 Systems Manager 動作，請參閱《AWS Systems Manager 使用者指南》**中的[設定 CloudWatch 以從警示建立 OpsItems](https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-create-OpsItems-from-CloudWatch-Alarms.html)章節；以及《Incident Manager 使用者指南》中的[事件建立](https://docs.aws.amazon.com/incident-manager/latest/userguide/incident-creation.html)章節。若要建立執行 SSM Incident Manager 動作的警示，您必須具備正確的許可。如需詳細資訊，請參閱[《 Incident Manager 使用者指南》中的 AWS Systems Manager Incident Manager 的身分型政策範例](https://docs.aws.amazon.com/incident-manager/latest/userguide/security_iam_id-based-policy-examples.html)。 **

   若要讓警示開始調查，請選擇**新增調查動作**，然後選取調查群組。如需 的詳細資訊，請參閱 [CloudWatch 調查](Investigations.md)。

1. 完成時，請選擇**下一步**。

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

1. 完成時，請選擇**下一步**。

1. 在 **Preview and create** (預覽並建立) 中確認您的資訊，然後選擇 **Create composite alarm** (建立複合警示)。
**注意**  
您可能會建立複合警示循環，使一個複合警示和另一個複合警示彼此參照。如果您發現自己處於這種情況，您的複合警示會停止接受評估，而且您會無法刪除複合警示，因為兩者彼此參照。要打破複合警示彼此參照的循環，最簡單的方法是將您其中一個複合警示中的函數 `AlarmRule` 變更為 `False`。