

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

# 在 ARC 中使用區域切換搭配 Amazon EventBridge
<a name="eventbridge-region-switch"></a>

使用 Amazon EventBridge，您可以設定事件驅動規則，以監控 Amazon Application Recovery Controller (ARC) 中的區域切換資源，然後啟動使用其他服務的目標動作 AWS 。例如，只要區域切換計劃完成執行，您就可以透過發出 Amazon SNS 主題的訊號來設定傳送電子郵件通知的規則。

您可以在 Amazon EventBridge 中建立規則，以處理下列 ARC 區域切換事件：
+ *區域切換計畫執行。*事件指定區域切換計劃已執行 （執行）。
+ *區域切換計畫評估。*事件指定區域切換計畫評估已完成。

若要擷取您感興趣的特定 ARC 事件，請定義 EventBridge 可用來偵測事件的事件特定模式。事件模式的結構與其相符的事件相同。該模式引用您欲比對的欄位，並提供您正在尋找的數值。

盡可能發出事件。在正常操作情況下，它們會以近乎即時的方式從 ARC 交付至 EventBridge。不過，可能會發生延遲或阻止交付事件的情況。

如需 EventBridge 規則如何使用事件模式的詳細資訊，請參閱 [EventBridge 中的事件和事件模式](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)。

## 使用 EventBridge 監控區域切換資源
<a name="arc-eventbridge-tasks-readiness"></a>

使用 EventBridge，您可以建立規則，定義 ARC 為區域切換資源發出事件時要採取的動作。

若要在 EventBridge 主控台中輸入或複製事件模式並貼上，請在主控台中選取 以**輸入我自己的**選項。為了協助您判斷可能對您有用的事件模式，本主題包含[範例區域切換模式](#arc-eventbridge-examples-region-switch)。

**建立資源事件的規則**

1. 前往 [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/) 開啟 Amazon EventBridge 主控台。

1. 若要 AWS 區域 在 中建立規則，請選擇您建立要監控事件之計劃的區域。

1. 選擇 **Create rule** (建立規則)。

1. 輸入規則的**Name (名稱)**，或者輸入描述。

1. 對於**事件匯流排**，請保留預設值 ****。

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

1. 對於**建置事件模式**步驟，對於**事件來源**，請保留預設值 **AWS 事件**。

1. 在**範例事件**下，選擇**輸入我自己的**。

1. 對於**範例事件**，輸入或複製並貼上事件模式。如需範例，請參閱下一節。

## 範例區域切換模式
<a name="arc-eventbridge-examples-region-switch"></a>

事件模式的結構與其相符的事件相同。該模式引用您欲比對的欄位，並提供您正在尋找的數值。

您可以將本節的事件模式複製並貼到 EventBridge 中，以建立可用來監控 ARC 動作和資源的規則。

下列事件模式提供您可以在 EventBridge 中用於 ARC 中區域切換功能的範例。
+ *從區域切換中選取 PlanExecution 的所有事件*。

  ```
  {
      "source": [ "aws.arc-region-switch" ],
      "detail-type": [ "ARC Region switch Plan Execution" ] 
  }
  ```
+ *從區域切換選取所有事件以進行 PlanEvaluation*。

  ```
      	{
      	"source": [ "aws.arc-region-switch" ],
      	"detail-type": [ "ARC Region Switch Plan Evaluation" ] 
      	}
  ```

以下是*區域切換計畫執行*的範例 ARC 事件：

```
{
  	"version": "0",
  	"id": "1111111-bbbb-aaaa-cccc-dddddEXAMPLE", # Random uuid
  	"detail-type": "ARC Region Switch Plan Execution",
  	"source": "aws.arc-region-switch",
  	"account": "111122223333",
  	"time": "2023-11-16T23:38:14Z",
  	"region": "us-east-1",
  	"resources": ["arn:aws:arc-region-switch::111122223333:plan/aaaaaExample"], # planArn
  	"detail": {
  		"version": "0.0.1",
  		"eventType": "ExecutionStarted",
  		"executionId": "bbbbbbEXAMPLE",
  		"executionAction": "activating/deactivating {region}",
  		"idempotencyKey": "1111111-2222-3333-4444-5555555555", # As there is a possibility of dual logging
  	}
}
```

以下是*區域切換計劃步驟層級執行*的範例 ARC 事件：

```
{
  	"version": "0",
  	"id": "1111111-bbbb-aaaa-cccc-dddddEXAMPLE", # Random uuid
  	"detail-type": "ARC Region Switch Plan Execution",
  	"source": "aws.arc-region-switch",
  	"account": "111122223333",
  	"time": "2023-11-16T23:38:14Z",
  	"region": "us-east-1",
  	"resources": ["arn:aws:arc-region-switch::111122223333:plan/aaaaaExample"], # planArn
  	"detail": {
  		"version": "0.0.1",
  		"eventType": "StepStarted",
  		"executionId": "bbbbbbEXAMPLE",
  		"executionAction": "activating/deactivating {region}",
  		"idempotencyKey": "1111111-2222-3333-4444-5555555555", # As there is a possibility of dual logging
  		"stepDetails" : { 
  			"stepName": "Routing control step",
  			"resource": ["arn:aws:route53-recovery-control::111122223333:controlpanel/abcdefghiEXAMPLE/routingcontrol/jklmnopqrsEXAMPLE"]   
  		}
  	}
}
```

以下是*區域切換計劃評估警告*的 ARC 事件範例。

對於區域切換計畫評估，會在傳回警告時發出事件。如果未清除警告，則只會每 24 小時發出一次警告事件。清除事件時，不會針對該警告發出其他事件。

```
{
  	"version": "0",
  	"id": "05d4d2d5-9c76-bfea-72d2-d4614802adb4", # Random uuid
  	"detail-type": "ARC Region Switch Plan Execution",
  	"source": "aws.arc-region-switch",
  	"account": "111122223333",
  	"time": "2023-11-16T23:38:14Z",
  	"region": "us-east-1",
  	"resources": ["arn:aws:arc-region-switch::111122223333:plan/a2b89be4821bfd1d"],
  	"detail": {
    	"version": "0.0.1",
    	"idempotencyKey": "1111111-2222-3333-4444-5555555555",
    	"metadata": {
        "evaluationTime" : "timestamp",
        "warning" : "There is a plan evaluation warning for arn:aws:arc-region-switch::111122223333:plan/a2b89be4821bfd1d. Navigate to the Region switch console to resolve."
    	}  	
  	}
}
```

## 指定要用作目標的 CloudWatch 日誌群組
<a name="arc-eventbridge-cw-loggroup-rs"></a>

建立 EventBridge 規則時，您必須指定傳送符合規則之事件的目標。如需 EventBridge 可用目標的清單，請參閱 [ EventBridge 主控台中可用的目標](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-targets.html#eb-console-targets)。您可以新增至 EventBridge 規則的目標之一是 Amazon CloudWatch 日誌群組。本節說明將 CloudWatch 日誌群組新增為目標的需求，並提供在建立規則時新增日誌群組的程序。

若要將 CloudWatch 日誌群組新增為目標，您可以執行下列其中一項操作：
+ 建立新的日誌群組 
+ 選擇現有的日誌群組

如果您在建立規則時使用主控台指定新的日誌群組，EventBridge 會自動為您建立日誌群組。請確定您用作 EventBridge 規則目標的日誌群組以 開頭`/aws/events`。如果您想要選擇現有的日誌群組，請注意，只有開頭為 的日誌群組才會在下拉式功能表中`/aws/events`顯示為選項。如需詳細資訊，請參閱《*Amazon CloudWatch 使用者指南*》中的[建立新的日誌群組](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#Create-Log-Group)。

如果您使用主控台外部的 CloudWatch 操作建立或使用 CloudWatch 日誌群組做為目標，請確定您已正確設定許可。如果您使用主控台將日誌群組新增至 EventBridge 規則，則日誌群組的資源型政策會自動更新。但是，如果您使用 AWS Command Line Interface 或 AWS SDK 來指定日誌群組，則必須更新日誌群組的資源型政策。下列範例政策說明您必須在日誌群組的資源型政策中定義的許可：

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "logs:CreateLogStream",
        "logs:PutLogEvents"
      ],
      "Effect": "Allow",
      "Principal": {
        "Service": [
          "events.amazonaws.com",
          "delivery.logs.amazonaws.com"
        ]
      },
      "Resource": "arn:aws:logs:us-east-1:222222222222:log-group:/aws/events/*:*",
      "Sid": "TrustEventsToStoreLogEvent"
    }
  ]
}
```

------

您無法使用 主控台為日誌群組設定資源型政策。若要將必要的許可新增至以資源為基礎的政策，請使用 CloudWatch [PutResourcePolicy](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutResourcePolicy.html) API 操作。然後，您可以使用 [ describe-resource-policies](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/logs/describe-resource-policies.html) CLI 命令來檢查政策是否正確套用。

**為資源事件建立規則並指定 CloudWatch 日誌群組目標**

1. 前往 [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/) 開啟 Amazon EventBridge 主控台。

1. 選擇您要 AWS 區域 在其中建立規則的 。

1. 選擇**建立規則**，然後輸入該規則的任何相關資訊，例如事件模式或排程詳細資訊。

   如需建立 EventBridge 規則以進行整備的詳細資訊，請參閱[使用 EventBridge 監控整備檢查資源](eventbridge-readiness.md#RCEventBridgeCreateRule)。

1. 在**選取目標**頁面上，選擇 **CloudWatch** 做為您的目標。

1. 從下拉式選單中選擇 CloudWatch 日誌群組。