

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 이메일 전송 자동 일시 중지
<a name="monitoring-sender-reputation-pausing"></a>

발신자 평판을 보호하기 위해 특정 구성 세트를 사용하여 전송된 메시지 또는 특정 AWS 리전의 Amazon SES 계정에서 전송된 모든 메시지에 대해 이메일 전송을 일시적으로 일시 중지할 수 있습니다.

Amazon CloudWatch 및 Lambda를 사용하면 평판 지표(예: 반송 메일 발생률 또는 수신 거부 발생률)가 특정 임계값을 초과할 때 이메일 전송을 자동으로 일시 중지하는 솔루션을 생성할 수 있습니다. 이 주제에는 이러한 솔루션을 설정하는 절차가 포함되어 있습니다.

**Topics**
+ [전체 Amazon SES 계정에 대한 이메일 전송 자동 일시 중지](monitoring-sender-reputation-pausing-account.md)
+ [구성 집합에 대한 이메일 전송 자동 일시 중지](monitoring-sender-reputation-pausing-configuration-set.md)

# 전체 Amazon SES 계정에 대한 이메일 전송 자동 일시 중지
<a name="monitoring-sender-reputation-pausing-account"></a>

이 섹션의 절차에서는 Amazon SES, Amazon SNS, Amazon CloudWatch 및 AWS Lambda 을(를) 설정하여 단일 AWS 리전에 있는 Amazon SES 계정에 대한 이메일 전송을 자동으로 일시 중지하는 단계를 설명합니다. 여러 리전으로부터 이메일을 보내려면, 이 방법을 구현하고자 하는 리전마다 이 섹션의 절차를 반복하세요.

**Topics**
+ [1부 - IAM 역할 만들기](#monitoring-sender-reputation-pausing-account-part-1)
+ [2부: Lambda 함수 만들기](#monitoring-sender-reputation-pausing-account-part-2)
+ [3부: 계정에 대한 이메일 전송 재활성화](#monitoring-sender-reputation-pausing-account-part-3)
+ [4부: Amazon SNS 주제 생성 및 구독](#monitoring-sender-reputation-pausing-account-part-4)
+ [5부: CloudWatch 경보를 생성하려면](#monitoring-sender-reputation-pausing-account-part-5)
+ [6부: 솔루션 테스트](#monitoring-sender-reputation-pausing-account-part-6)

## 1부 - IAM 역할 만들기
<a name="monitoring-sender-reputation-pausing-account-part-1"></a>

이메일 전송 자동 일시 중지를 구성하는 첫 단계는 `UpdateAccountSendingEnabled` API 작업을 실행할 수 있는 IAM 역할을 만드는 것입니다.

**IAM 역할을 만들려면**

1. IAM 콘솔([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/))을 엽니다.

1. 탐색 창에서 **역할**을 선택합니다.

1. **역할 만들기**를 선택합니다.

1. **Select trusted entity**(신뢰할 수 있는 엔터티 선택) 페이지의 **Trusted entity type**(신뢰할 수 있는 엔터티 유형) 아래에서 **AWS service**를 선택합니다.

1. **사용 사례(Use case)**에서 **Lambda**를 선택한 후 **다음(Next)**을 선택합니다.

1. **권한 추가(Add permissions)** 페이지에서 다음 정책을 선택합니다.
   + **AWSLambdaBasicExecutionRole**
   + **AmazonSESFullAccess**
**작은 정보**  
**권한 정책(Permission policies)** 아래의 검색 상자를 사용하여 이러한 정책을 빠르게 찾을 수 있지만 첫 번째 정책을 검색하고 선택한 후에는 두 번째 정책을 검색하고 선택하기 전에 **필터 지우기(Clear filters)**를 선택해야 합니다.

   그리고 **다음**을 선택합니다.

1. **이름 지정, 검토 및 만들기(Name, review, and create)** 페이지의 **역할 세부 정보(Role details)**에서 **역할 이름(Role name)** 필드에 정책의 의미 있는 이름을 입력합니다.

1. 선택한 두 정책이 **권한 정책 요약(Permissions policy summary)** 테이블에 나열되어 있는지 확인한 다음 **역할 만들기(Create role)**를 선택합니다.

## 2부: Lambda 함수 만들기
<a name="monitoring-sender-reputation-pausing-account-part-2"></a>

IAM 역할을 만든 후에는 계정에 대한 이메일 전송을 일시 중지시키는 Lambda 함수를 만들 수 있습니다.

**Lambda 함수를 만들려면**

1. [https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/) AWS Lambda 콘솔을 엽니다.

1. 리전 선택기를 사용하여 이 Lambda 함수를 배포할 리전을 선택합니다.
**참고**  
이 함수는이 단계에서 선택한 AWS 리전에서만 이메일 전송을 일시 중지합니다. 둘 이상의 리전으로부터 이메일을 보내는 경우, 이메일 전송을 자동으로 일시 중지하려는 리전마다 이 섹션의 절차를 반복하세요.

1. **함수 만들기(Create function)**를 선택합니다.

1. **함수 만들기**에서 **Author from scratch**를 선택합니다.

1. **기본 정보(Basic information)**에서 다음 단계를 완료합니다.
   + **함수 이름(Function name)**에 Lambda 함수의 이름을 입력합니다.
   + **런타임**에서 **Node.js 18x**(또는 선택 목록에 현재 제공된 버전)를 선택합니다.
   + **아키텍처(Architecture)**에서 미리 선택된 기본값 **x86\$164**를 유지합니다.
   + 권한(Permissions)에서 **기본 실행 역할 변경(Change default execution role)**을 확장하고 **기존 역할 사용(Use an existing role)**을 선택합니다.
   + **기존 역할(Existing role)** 목록 상자 내부를 클릭하고 [1부 - IAM 역할 만들기](#monitoring-sender-reputation-pausing-account-part-1)에서 생성한 IAM 역할을 선택합니다.

   그 다음 **함수 만들기**(Create function)를 선택합니다.

1. 코드 편집기의 **코드 소스(Code source)**에 다음 코드를 붙여 넣습니다.

   ```
   'use strict';
   
   
   const { SES } = require("@aws-sdk/client-ses")
   
   // Create a new SES object. 
   
   var ses = new SES({});                  
   
   // Specify the parameters for this operation. In this case, there is only one
   // parameter to pass: the Enabled parameter, with a value of false
   // (Enabled = false disables email sending, Enabled = true enables it).
   var params = {
       Enabled: false
   };
   
   exports.handler = (event, context, callback) => {
       // Pause sending for your entire SES account
       ses.updateAccountSendingEnabled(params, function(err, data) {
           if(err) {
               console.log(err.message);
           } else {
               console.log(data);
           }
       });
   };
   ```

   그런 다음 **배포**를 선택합니다.

1. **테스트**를 선택합니다. **테스트 이벤트 구성(Configure test event)** 창이 나타나면 **이벤트 이름(Event name)** 필드에 이름을 입력한 후 **저장(Save)**을 선택합니다.

1. **테스트(Test)** 드롭 상자를 확장하고 방금 생성한 이벤트의 이름을 선택한 후 **테스트(Test)**를 선택합니다.

1. **실행 결과(Execution results)** 탭이 나타납니다. 바로 아래 오른쪽에 `Status: Succeeded`가 표시되는지 확인합니다. 함수가 실행되지 못하면 다음을 수행합니다.
   + [1부 - IAM 역할 만들기](#monitoring-sender-reputation-pausing-account-part-1)에서 생성한 IAM 역할에 올바른 정책이 포함되는지 확인합니다.
   + Lambda 함수의 코드에 오류가 없는지 확인합니다. Lambda 코드 편집기가 구문 오류 및 다른 잠재적인 문제를 자동으로 강조 표시합니다.

## 3부: 계정에 대한 이메일 전송 재활성화
<a name="monitoring-sender-reputation-pausing-account-part-3"></a>

[2부: Lambda 함수 만들기](#monitoring-sender-reputation-pausing-account-part-2)에서 Lambda 함수를 테스트할 때의 부작용은 Amazon SES 계정에 대한 이메일 전송이 일시 중지되는 것입니다. 대부분의 경우 CloudWatch 경보가 트리거될 때까지 계정에 대한 전송을 일시 중지하지 않습니다.

이 섹션의 절차에서는 Amazon SES 계정에 대한 이메일 전송을 다시 활성화합니다. 이 절차를 완료하려면 AWS Command Line Interface을 설치하고 구성해야 합니다. 자세한 내용은 [AWS Command Line Interface 사용 설명서](https://docs.aws.amazon.com/cli/latest/userguide/)를 참조하세요.

**이메일 전송을 재활성화하려면**

1. 명령줄에 다음 명령을 입력하여 계정에 대한 이메일 전송을 다시 활성화합니다. *sending\$1region*을 이메일 전송을 재활성화할 리전의 이름으로 바꿉니다.

   ```
   aws ses update-account-sending-enabled --enabled --region sending_region
   ```

1. 명령줄에 다음 명령을 입력하여 계정에 대한 이메일 전송 상태를 확인합니다. 

   ```
   aws ses get-account-sending-enabled --region sending_region
   ```

   다음 결과가 표시되면 계정에 대한 이메일 전송이 성공적으로 재활성화된 것입니다.

   ```
   {
       "Enabled": true 
   }
   ```

## 4부: Amazon SNS 주제 생성 및 구독
<a name="monitoring-sender-reputation-pausing-account-part-4"></a>

경보가 트리거될 때 CloudWatch가 Lambda 함수를 실행하려면 먼저 Amazon SNS 주제를 생성하고 해당 Lambda 함수를 구독해야 합니다.

**Amazon SNS 주제를 생성하고 Lambda 함수로 구독**

1. [https://console.aws.amazon.com/sns/v3/home](https://console.aws.amazon.com/sns/v3/home)에서 Amazon SNS 콘솔을 엽니다.

1. *Amazon Simple Notification Service 개발자 안내서*의 단계에 따라 [주제를 생성](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html)합니다.

   1. **Type**(유형)은 **Standard**(표준)(**FIFO** 아님)여야 합니다.

1. *Amazon Simple Notification Service 개발자 안내서*의 단계에 따라 [주제를 구독](https://docs.aws.amazon.com/sns/latest/dg/sns-create-subscribe-endpoint-to-topic.html)합니다.

   1. **프로토콜**에서 **AWS Lambda**를 선택합니다.

   1. **엔드포인트**에서 [2부: Lambda 함수 만들기](#monitoring-sender-reputation-pausing-account-part-2)에서 생성한 Lambda 함수를 선택합니다.

## 5부: CloudWatch 경보를 생성하려면
<a name="monitoring-sender-reputation-pausing-account-part-5"></a>

이 섹션에는 지표가 특정 임계값에 도달하면 트리거되는 CloudWatch에 경보를 생성하기 위한 절차가 포함되어 있습니다. 경보가 트리거되면 [4부: Amazon SNS 주제 생성 및 구독](#monitoring-sender-reputation-pausing-account-part-4)에서 생성한 Amazon SNS 주제에 알림을 전달한 후 [2부: Lambda 함수 만들기](#monitoring-sender-reputation-pausing-account-part-2)에서 생성한 Lambda 함수를 실행합니다.

**CloudWatch 경보를 생성하려면**

1. [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)에서 CloudWatch 콘솔을 엽니다.

1. 리전 선택기를 사용하여 이메일 전송을 자동으로 일시 중지하려는 리전을 선택합니다.

1. 탐색 창에서 **경보(Alarms)**를 선택하세요.

1. **경보 생성**을 선택합니다.

1. [**Create Alarm**] 창의 [**SES Metrics**] 아래에서 [**Account Metrics**]를 선택합니다.

1. [**Metric Name**] 아래에서 다음 옵션 중 하나를 선택합니다.
   + **Reputation.BounceRate** – 계정의 전체 하드 바운스 발생률이 사용자가 정의하는 임계값을 초과할 때 계정에 대한 이메일 전송을 일시 중지하려면 이 지표를 선택합니다.
   + **Reputation.ComplaintRate** – 계정의 전체 수신 거부 발생률이 사용자가 정의하는 임계값을 초과할 때 계정에 대한 이메일 전송을 일시 중지하려면 이 지표를 선택합니다.

   **다음**을 선택합니다.

1. 다음 단계를 완료합니다.
   + [**Alarm Threshold**]에서 [**Name**]에 경보 이름을 입력합니다.
   + [**Whenever: Reputation.BounceRate**] 또는 [**Whenever: Reputation.ComplaintRate**] 아래에서 경보를 트리거하게 하는 임계값을 지정합니다.
**참고**  
반송 메일 발생률이 5%를 초과하거나 수신 거부 발생률이 0.1%를 초과하는 경우 계정이 자동으로 검토 상태가 됩니다. CloudWatch 경보를 트리거하게 하는 반송 메일 또는 수신 거부 발생률을 지정하면 계정이 검토 상태가 되지 않도록 이러한 발생률보다 낮은 값을 사용하는 것이 좋습니다.
   + **작업**의 **이 경보가 발생할 경우 항상**에서 **상태가 ALARM입니다**를 선택합니다. **알림 보내기**에서 [4부: Amazon SNS 주제 생성 및 구독](#monitoring-sender-reputation-pausing-account-part-4)에서 생성한 Amazon SNS 주제를 선택합니다.

   **경보 생성**을 선택합니다.

## 6부: 솔루션 테스트
<a name="monitoring-sender-reputation-pausing-account-part-6"></a>

이제 경보를 테스트하여`ALARM` 상태로 전환될 때 Lambda 함수를 실행하는지 확인할 수 있습니다. `SetAlarmState` API 작업을 사용하여 경보의 상태를 일시적으로 변경할 수 있습니다.

이 섹션의 절차는 선택 사항이지만 전체 솔루션을 올바로 구성할 수 있도록 완료하는 것이 좋습니다.

1. 명령줄에 다음 명령을 입력하여 계정에 대한 이메일 전송 상태를 확인합니다. *region*을 리전의 이름으로 바꿉니다.

   ```
   aws ses get-account-sending-enabled --region region
   ```

   계정에 대해 전송이 활성화되어 있으면 다음 결과가 표시됩니다.

   ```
   {
       "Enabled": true 
   }
   ```

1. 명령줄에 다음 명령을 입력하여 경보 상태를 `ALARM`으로 임시 변경합니다. **aws cloudwatch set-alarm-state --alarm-name *MyAlarm* --state-value ALARM --state-reason "Testing execution of Lambda function" --region *region*** 

   위 명령에서 *MyAlarm*을 [5부: CloudWatch 경보를 생성하려면](#monitoring-sender-reputation-pausing-account-part-5) 섹션에서 생성한 경보의 이름으로 바꾸고, *region*을 이메일 전송을 자동으로 일시 중지하려는 리전으로 바꿉니다.
**참고**  
이 명령을 실행하면 경보의 상태가 `OK`에서 `ALARM`으로 바뀌고 몇 초 이내에 다시 `OK`로 바뀝니다. 이러한 상태 변경 사항은 CloudWatch 콘솔 내 경보의 **기록** 탭을 사용하거나 [DescribeAlarmHistory](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_DescribeAlarmHistory.html) 작업을 사용합니다.

1. 명령줄에 다음 명령을 입력하여 계정에 대한 이메일 전송 상태를 확인합니다. 

   ```
   aws ses get-account-sending-enabled --region region
   ```

   Lambda 함수가 성공적으로 실행되면 다음 결과가 표시됩니다.

   ```
   {
       "Enabled": false
   }
   ```

1. [3부: 계정에 대한 이메일 전송 재활성화](#monitoring-sender-reputation-pausing-account-part-3)의 단계를 완료하여 계정에 대한 이메일 전송을 재활성화합니다.

# 구성 집합에 대한 이메일 전송 자동 일시 중지
<a name="monitoring-sender-reputation-pausing-configuration-set"></a>

Amazon CloudWatch로 설정된 특정 구성을 사용하여 전송된 이메일 전용 평판 지표를 내보내도록 Amazon SES를 구성할 수 있습니다. 그 다음 이러한 지표를 사용하여 이러한 구성 세트 전용 CloudWatch 경보를 생성할 수 있습니다. 이러한 경보가 특정 임계값을 초과하면 Amazon SES 계정의 전체 이메일 전송 기능에 영향을 주지 않고 지정된 구성 세트를 사용하는 이메일 전송을 자동으로 일시 중지할 수 있습니다.

**참고**  
이 섹션에 설명된 솔루션은 단일 AWS 리전의 특정 구성 세트에 대한 이메일 전송을 일시 중지합니다. 여러 리전으로부터 이메일을 보내려면, 이 방법을 구현하고자 하는 리전마다 이 섹션의 절차를 반복하세요.

**Topics**
+ [1부: 구성 세트에 대한 평판 지표 보고 활성화](#monitoring-sender-reputation-pausing-configuration-set-part-1)
+ [2부 - IAM 역할 만들기](#monitoring-sender-reputation-pausing-configuration-set-part-2)
+ [3부: Lambda 함수 생성](#monitoring-sender-reputation-pausing-configuration-set-part-3)
+ [4부: 구성 세트에 대한 이메일 전송 재활성화](#monitoring-sender-reputation-pausing-configuration-set-part-4)
+ [5부: Amazon SNS 주제 생성](#monitoring-sender-reputation-pausing-configuration-set-part-5)
+ [6부: CloudWatch 경보를 생성하려면](#monitoring-sender-reputation-pausing-configuration-set-part-6)
+ [7부: 솔루션 테스트](#monitoring-sender-reputation-pausing-configuration-set-part-7)

## 1부: 구성 세트에 대한 평판 지표 보고 활성화
<a name="monitoring-sender-reputation-pausing-configuration-set-part-1"></a>

구성 세트에 대해 이메일 전송을 자동으로 일시 중지하도록 Amazon SES를 구성하려면 먼저 구성 세트에 대한 평판 지표 내보내기를 활성화해야 합니다.

구성 세트에 대한 반송 메일 및 불만 지표 내보내기를 활성화하려면 [평판 지표 보기 및 내보내기](configuration-sets-export-metrics.md)의 단계를 완료해야 합니다.

## 2부 - IAM 역할 만들기
<a name="monitoring-sender-reputation-pausing-configuration-set-part-2"></a>

이메일 전송 자동 일시 중지를 구성하는 첫 단계는 `UpdateConfigurationSetSendingEnabled` API 작업을 실행할 수 있는 IAM 역할을 생성하는 것입니다.

**IAM 역할을 만들려면**

1. IAM 콘솔([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/))을 엽니다.

1. 탐색 창에서 **역할**을 선택합니다.

1. **역할 생성(Create role)**을 선택합니다.

1. **신뢰할 수 있는 엔티티 유형 선택** 아래에서 **AWS 서비스**를 선택합니다.

1. **Choose the service that will use this role(이 역할을 사용할 서비스 선택)** 아래에서 **Lambda**를 선택합니다. **Next: Permissions(다음: 권한)**를 선택합니다.

1. [**Attach permissions policies**] 페이지에서 다음 정책을 선택합니다.
   + **AWS Lambda BasicExecutionRole**
   + **AmazonSESFullAccess**([https://docs.aws.amazon.com/ses/latest/APIReference/API_UpdateConfigurationSetSendingEnabled.html](https://docs.aws.amazon.com/ses/latest/APIReference/API_UpdateConfigurationSetSendingEnabled.html)를 직접적으로 호출할 수 있는 권한이 포함된 요구 사항에 맞는 사용자 지정 역할을 사용하는 것이 좋음) 
**작은 정보**  
정책 목록 상단의 검색 상자를 사용하여 이러한 정책을 빨리 찾습니다.

   **다음: 검토**를 선택합니다.

1. [**Review**] 페이지의 [**Name**]에서 역할 이름을 입력합니다. **역할 생성**을 선택합니다.

   

## 3부: Lambda 함수 생성
<a name="monitoring-sender-reputation-pausing-configuration-set-part-3"></a>

IAM 역할을 생성한 후에는 구성 세트에 대한 이메일 전송을 일시 중지시키는 Lambda 함수를 생성할 수 있습니다.

**Lambda 함수를 만들려면**

1. [https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/) AWS Lambda 콘솔을 엽니다.

1. 리전 선택기를 사용하여 이 Lambda 함수를 배포할 리전을 선택합니다.
**참고**  
이 함수는 이 단계에서 선택하는 AWS 리전에서만 구성 세트에 대한 이메일 전송을 일시 중지시킵니다. 둘 이상의 리전으로부터 이메일을 보내는 경우, 이메일 전송을 자동으로 일시 중지하려는 리전마다 이 섹션의 절차를 반복하세요.

1. **함수 만들기(Create function)**를 선택합니다.

1. **함수 생성**에서 **Author from scratch**를 선택합니다.

1. **Author from scratch**에서 다음 단계를 수행합니다.
   + **이름**에 Lambda 함수의 이름을 입력합니다.
   + **런타임(Runtime)**에서 **Node.js 14x**(또는 선택 목록에 현재 제공된 버전).
   + **역할**에서 **기존 역할 선택**을 선택합니다.
   + **기존 역할**에서 [2부 - IAM 역할 만들기](#monitoring-sender-reputation-pausing-configuration-set-part-2)에서 생성한 IAM 역할을 선택합니다.

   **함수 생성**을 선택합니다.

1. 코드 편집기의 [**Function code**]에 다음 코드를 붙여 넣습니다.

   ```
   'use strict';
   
   import {
       SES
   }
   from 'aws-sdk';
   
   const ses = new SES();
   const configSet = 'CONFIG_SET_NAME_HERE';
   
   const params = {
       ConfigurationSetName: configSet,
       Enabled: false
   };
   
   export const handler = async (event) => {
       try {
           const data = await ses.updateConfigurationSetSendingEnabled(params).promise();
           
           console.log('Configuration Set Update:', data);
           
           return {
               statusCode: 200,
               body: JSON.stringify({
                   message: 'Successfully paused email sending for configuration set.',
                   data
               }),
           };
       }
       catch (err) {
           console.error('Error:', err.message);
           return {
               statusCode: 500,
               body: JSON.stringify({
                   message: 'Failed to pause email sending for configuration set.',
                   error: err.message
               }),
           };
       }
   };
   ```

   위 코드의 *ConfigSet*을 구성 세트의 이름으로 바꿉니다. **저장**을 선택합니다.

1. **테스트**를 선택합니다. [**Configure test event**] 창이 나타나면 [**Event name**] 필드에 이름을 입력한 후 [**Create**]를 선택합니다.

1.  페이지 상단의 알림 표시줄에 `Execution result: succeeded`라고 표시되는지 확인합니다. 함수가 실행되지 못하면 다음을 수행합니다.
   + [2부 - IAM 역할 만들기](#monitoring-sender-reputation-pausing-configuration-set-part-2)에서 생성한 IAM 역할에 올바른 정책이 포함되는지 확인합니다.
   + Lambda 함수의 코드에 오류가 없는지 확인합니다. Lambda 코드 편집기가 구문 오류 및 다른 잠재적인 문제를 자동으로 강조 표시합니다.

## 4부: 구성 세트에 대한 이메일 전송 재활성화
<a name="monitoring-sender-reputation-pausing-configuration-set-part-4"></a>

[3부: Lambda 함수 생성](#monitoring-sender-reputation-pausing-configuration-set-part-3)에서 Lambda 함수를 테스트할 때의 부작용은 구성 세트에 대한 이메일 전송이 일시 중지되는 것입니다. 대부분의 경우 CloudWatch 경보가 트리거될 때까지 구성 세트에 대한 전송을 일시 중지하지 않습니다.

이 단원의 절차에서는 구성 세트에 대한 이메일 전송 재활성화를 설명합니다. 이 절차를 완료하려면 AWS Command Line Interface을 설치하고 구성해야 합니다. 자세한 내용은 [AWS Command Line Interface 사용 설명서](https://docs.aws.amazon.com/cli/latest/userguide/)를 참조하세요.

**이메일 전송을 재활성화하려면**

1. 명령줄에 다음 명령을 입력하여 구성 세트에 대한 이메일 전송을 다시 활성화합니다.

   ```
   aws ses update-configuration-set-sending-enabled \
   --configuration-set-name ConfigSet \
   --enabled
   ```

   앞의 명령에서 *ConfigSet*를 이메일 전송을 일시 중지하려는 구성 세트의 이름으로 바꿉니다.

1. 명령줄에 다음 명령을 입력하여 이메일 전송이 활성화되었는지 확인합니다.

   ```
   aws ses describe-configuration-set \
   --configuration-set-name ConfigSet \
   --configuration-set-attribute-names reputationOptions
   ```

   이 명령은 다음 예제와 유사한 출력을 생성합니다.

   ```
   {                           
       "ConfigurationSet": {   
           "Name": "ConfigSet" 
       },
       "ReputationOptions": {
           "ReputationMetricsEnabled": true,
           "SendingEnabled": true
       }	
   }
   ```

   `SendingEnabled`의 값이 `true`이면 구성 세트에 대한 이메일 전송이 성공적으로 재활성화된 것입니다.

## 5부: Amazon SNS 주제 생성
<a name="monitoring-sender-reputation-pausing-configuration-set-part-5"></a>

경보가 트리거될 때 CloudWatch가 Lambda 함수를 실행하려면 먼저 Amazon SNS 주제를 생성하고 해당 Lambda 함수를 구독해야 합니다.

**Amazon SNS 주제를 생성하려면**

1. [https://console.aws.amazon.com/sns/v3/home](https://console.aws.amazon.com/sns/v3/home)에서 Amazon SNS 콘솔을 엽니다.

1. 리전 선택기를 사용하여 이메일 전송을 자동으로 일시 중지하려는 리전을 선택합니다.

1. 탐색 창에서 **주제**를 선택합니다.

1. [**Create new topic**]을 선택합니다.

1. [**Create new topic**] 창의 [**Topic name**]에서 주제 이름을 입력합니다. 선택적으로 [**Display name**] 필드에 더 세부적인 이름을 입력할 수 있습니다.

   **주제 생성**을 선택합니다.

1. 주제 목록에서 이전 단계에서 생성한 주제 옆의 상자를 선택합니다. [**Actions**] 메뉴에서 [**Subscribe to topic**]을 선택합니다.

1. [**Create subscription**] 창에서 다음과 같이 선택합니다.
   + **프로토콜**에서 **AWS Lambda**을 선택합니다.
   + **엔드포인트**에서 [3부: Lambda 함수 생성](#monitoring-sender-reputation-pausing-configuration-set-part-3)에서 생성한 Lambda 함수를 선택합니다.
   + [**Version or alias**]에서 [**default**]를 선택합니다.

1. **구독 생성**을 선택합니다.

## 6부: CloudWatch 경보를 생성하려면
<a name="monitoring-sender-reputation-pausing-configuration-set-part-6"></a>

이 단원에는 지표가 특정 임계값에 도달하면 트리거되는 CloudWatch에 경보를 생성하기 위한 절차가 포함되어 있습니다. 경보가 트리거되면 [5부: Amazon SNS 주제 생성](#monitoring-sender-reputation-pausing-configuration-set-part-5)에서 생성한 Amazon SNS 주제에 알림을 전달한 후 [3부: Lambda 함수 생성](#monitoring-sender-reputation-pausing-configuration-set-part-3)에서 생성한 Lambda 함수를 실행합니다.

**CloudWatch 경보를 생성하려면**

1. [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)에서 CloudWatch 콘솔을 엽니다.

1. 리전 선택기를 사용하여 이메일 전송을 자동으로 일시 중지하려는 리전을 선택합니다.

1. 왼쪽의 탐색 창에서 [**Alarms**]를 선택합니다.

1. **경보 생성**을 선택합니다.

1. [**Create Alarm**] 창의 [**SES Metrics**] 아래에서 [**Configuration Set Metrics**]를 선택합니다.

1. [**ses:configuration-set**] 열에서 경보를 생성할 구성 세트를 찾습니다. [**Metric Name**] 아래에서 다음 옵션 중 하나를 선택합니다.
   + **Reputation.BounceRate** – 구성 세트의 전체 하드 반송 메일 발생률이 사용자가 정의하는 임계값을 교차할 때 구성 세트에 대한 이메일 전송을 일시 중지하려는 경우 이 지표를 선택합니다.
   + **Reputation.ComplaintRate** – 구성 세트의 전체 수신 거부 발생률이 사용자가 정의하는 임계값을 교차할 때 구성 세트에 대한 이메일 전송을 일시 중지하려는 경우 이 지표를 선택합니다.

   **다음**을 선택합니다.

1. 다음 단계를 완료합니다.
   + [**Alarm Threshold**]에서 [**Name**]에 경보 이름을 입력합니다.
   + [**Whenever: Reputation.BounceRate**] 또는 [**Whenever: Reputation.ComplaintRate**] 아래에서 경보를 트리거하게 하는 임계값을 지정합니다.
**참고**  
Amazon SES 계정에 대한 전체 반송 메일 발생률이 10%를 초과하거나 Amazon SES 계정에 대한 전체 수신 거부 발생률이 0.5%를 초과하면 Amazon SES 계정이 자동으로 검토 상태로 설정됩니다. CloudWatch 경보를 트리거하게 하는 반송 메일 또는 수신 거부 발생률을 지정하면 계정이 검토 상태가 되지 않도록 이러한 발생률보다 매우 낮은 값을 사용하는 것이 좋습니다.
   + **작업**의 **이 경보가 발생할 경우 항상**에서 **상태가 ALARM입니다**를 선택합니다. **알림 보내기**에서 [5부: Amazon SNS 주제 생성](#monitoring-sender-reputation-pausing-configuration-set-part-5)에서 생성한 Amazon SNS 주제를 선택합니다.

   **경보 생성**을 선택합니다.

## 7부: 솔루션 테스트
<a name="monitoring-sender-reputation-pausing-configuration-set-part-7"></a>

이제 경보를 테스트하여 `ALARM` 상태로 전환될 때 Lambda 함수를 실행하는지 확인할 수 있습니다. CloudWatch API에서 `SetAlarmState` 작업을 사용하여 경보의 상태를 일시적으로 변경할 수 있습니다.

이 단원의 절차는 선택 사항이지만 전체 솔루션을 올바로 구성할 수 있도록 완료하는 것이 좋습니다.

**솔루션을 테스트하려면**

1. 명령줄에 다음 명령을 입력하여 구성 세트에 대한 이메일 전송 상태를 확인합니다.

   ```
   aws ses describe-configuration-set --configuration-set-name ConfigSet
   ```

   구성 세트에 대해 전송이 활성화되어 있으면 다음 결과가 표시됩니다.

   ```
   {                           
       "ConfigurationSet": {   
           "Name": "ConfigSet" 
       },
       "ReputationOptions": {
           "ReputationMetricsEnabled": true,
           "SendingEnabled": true
       }	
   }
   ```

   `SendingEnabled`의 값이 `true`이면 구성 세트에 대한 이메일 전송이 현재 활성화된 것입니다.

1. 명령줄에 다음 명령을 입력하여 경보 상태를 `ALARM`으로 임시 변경합니다.

   ```
   aws cloudwatch set-alarm-state \
   --alarm-name MyAlarm \
   --state-value ALARM \
   --state-reason "Testing execution of Lambda function"
   ```

   위 명령의 *MyAlarm*을 [6부: CloudWatch 경보를 생성하려면](#monitoring-sender-reputation-pausing-configuration-set-part-6)에서 생성한 경보의 이름으로 바꿉니다.
**참고**  
이 명령을 실행하면 경보의 상태가 `OK`에서 `ALARM`으로 바뀌고 몇 초 이내에 다시 `OK`로 바뀝니다. 이러한 상태 변경 사항은 CloudWatch 콘솔 내 경보의 **기록** 탭을 사용하거나 [DescribeAlarmHistory](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_DescribeAlarmHistory.html) 작업을 사용합니다.

1. 명령줄에 다음 명령을 입력하여 구성 세트에 대한 이메일 전송 상태를 확인합니다.

   ```
   aws ses describe-configuration-set \
   --configuration-set-name ConfigSet
   ```

   Lambda 함수가 성공적으로 실행되면 다음 예제와 유사한 출력이 표시됩니다.

   ```
   {                           
       "ConfigurationSet": {   
           "Name": "ConfigSet" 
       },
       "ReputationOptions": {
           "ReputationMetricsEnabled": true,
           "SendingEnabled": false
       }	
   }
   ```

   `SendingEnabled`의 값이 `false`이면 구성 세트에 대한 이메일 전송이 비활성화된 것으로, Lambda 함수가 성공적으로 실행되었음을 나타냅니다.

1. [4부: 구성 세트에 대한 이메일 전송 재활성화](#monitoring-sender-reputation-pausing-configuration-set-part-4)의 단계를 완료하여 구성 세트에 대한 이메일 전송을 재활성화합니다.