Amazon SES API를 사용하여 사용 통계 모니터링 - Amazon Simple Email Service

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

Amazon SES API를 사용하여 사용 통계 모니터링

Amazon SES API는 서비스 사용에 대한 정보를 반환하는 GetSendStatistics 작업을 제공합니다. 따라서 필요할 때는 조정할 수 있도록 전송 통계를 정기적으로 확인하는 것이 바람직합니다.

GetSendStatistics 작업을 호출하면 지난 2주 동안의 전송 활동을 나타내는 데이터 요소 목록이 전송됩니다. 이 목록의 각 데이터 요소는 15분 단위의 활동을 나타내며 해당 기간에 대한 다음과 같은 정보를 포함합니다.

  • 하드 바운스 수

  • 불만 제기 수

  • 전송 완료 시도 수(전송한 이메일 수와 일치함)

  • 거부된 전송 시도 수

  • 분석 기간을 나타내는 타임스탬프

GetSendStatistics 작업에 대한 자세한 설명은 Amazon Simple Email Service API 참조를 참조하십시오.

이 단원에는 다음과 같은 주제가 포함되어 있습니다.

GetSendStatistics를 사용하여 AWS CLI API 작업 호출

GetSendStatistics API 작업을 가장 쉽게 호출하려면 AWS Command Line Interface(AWS CLI)를 사용해야 합니다.

GetSendStatistics를 사용하여 AWS CLI API 작업을 호출하려면
  1. AWS CLI를 아직 설치하지 않았다면 설치합니다. 자세한 내용은 AWS Command Line Interface 사용 설명서에서 ‘AWS Command Line Interface 설치’를 참조하십시오.

  2. AWS CLI을 아직 구성하지 않았다면 AWS 자격 증명을 사용하도록 구성합니다. 자세한 내용은 AWS Command Line Interface 사용 설명서에서 ‘AWS CLI 구성’을 참조하십시오.

  3. 명령줄 프롬프트에 다음 명령을 실행합니다.

    aws ses get-send-statistics

    AWS CLI를 올바로 구성하였다면 JSON 형식으로 전송 통계 목록이 나타납니다. JSON 객체에는 각각 15분 동안 수집된 전송 통계가 포함됩니다.

프로그래밍 방식의 GetSendStatistics 작업 호출

GetSendStatistics 작업은 AWS SDK를 사용하여 호출할 수도 있습니다. 이 단원에는 Go, PHP, Python 및 Ruby용 AWS SDK의 코드 예제가 포함되어 있습니다. 다음 링크 중 하나를 선택하면 해당 언어의 코드 예제를 볼 수 있습니다.

참고

위 코드 예제는 AWS 액세스 키 ID, AWS 보안 액세스 키, 원하는 AWS 리전이 포함된 AWS 공유 자격 증명 파일을 이미 생성했다는 가정을 전제로 합니다. 자세한 내용은 공유 자격 증명 및 구성 파일을 참조하십시오.

GetSendStatistics를 사용하여 AWS SDK for Go 호출

package main import ( "fmt" //go get github.com/aws/aws-sdk-go/... "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/ses" "github.com/aws/aws-sdk-go/aws/awserr" ) const ( // Replace us-west-2 with the AWS Region you're using for Amazon SES. AwsRegion = "us-west-2" ) func main() { // Create a new session and specify an AWS Region. sess, err := session.NewSession(&aws.Config{ Region:aws.String(AwsRegion)}, ) // Create an SES client in the session. svc := ses.New(sess) input := &ses.GetSendStatisticsInput{} result, err := svc.GetSendStatistics(input) // Display error messages if they occur. if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { default: fmt.Println(aerr.Error()) } } else { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) } return } fmt.Println(result) }

GetSendStatistics를 사용하여 AWS SDK for PHP 호출

<?php // Replace path_to_sdk_inclusion with the path to the SDK as described in // http://docs.aws.amazon.com/aws-sdk-php/v3/guide/getting-started/basic-usage.html define('REQUIRED_FILE','path_to_sdk_inclusion'); // Replace us-west-2 with the AWS Region you're using for Amazon SES. define('REGION','us-west-2'); require REQUIRED_FILE; use Aws\Ses\SesClient; $client = SesClient::factory(array( 'version'=> 'latest', 'region' => REGION )); try { $result = $client->getSendStatistics([]); echo($result); } catch (Exception $e) { echo($e->getMessage()."\n"); } ?>

GetSendStatistics를 사용하여 AWS SDK for Python (Boto) 호출

import boto3 #pip install boto3 import json from botocore.exceptions import ClientError client = boto3.client('ses') try: response = client.get_send_statistics( ) except ClientError as e: print(e.response['Error']['Message']) else: print(json.dumps(response, indent=4, sort_keys=True, default=str))

GetSendStatistics를 사용하여 AWS SDK for Ruby 호출

require 'aws-sdk' # gem install aws-sdk require 'json' # Replace us-west-2 with the AWS Region you're using for Amazon SES. awsregion = "us-west-2" # Create a new SES resource and specify a region ses = Aws::SES::Client.new(region: awsregion) begin resp = ses.get_send_statistics({ }) puts JSON.pretty_generate(resp.to_h) # If something goes wrong, display an error message. rescue Aws::SES::Errors::ServiceError => error puts error end