メニュー
Amazon Simple Email Service
開発者ガイド

Amazon SES API を使用した使用統計のモニタリング

Amazon SES API は、GetSendStatistics オペレーションを使用してサービスの使用に関する情報を返します。送信統計を定期的にチェックし、必要に応じて調整を行うようお勧めします。

GetSendStatistics オペレーションを呼び出すと、過去 2 週間の送信アクティビティを示すデータポイントのリストが返されます。このリストの各データポイントは、15 分間のアクティビティを示し、その期間に関する以下の情報が含まれています:

  • ハードバウンス数

  • 苦情数。

  • 配信試行回数 (送信した E メールの数に対応します)

  • 送信試行の拒否数

  • 分析期間のタイムスタンプ

GetSendStatistics オペレーションの詳細な説明については、Amazon Simple Email Service API Reference を参照してください。

このセクションでは、以下のトピックについて説明します。

AWS CLI を使用した GetSendStatistics API オペレーションの呼び出し

GetSendStatistics API オペレーションを最も簡単に呼び出す方法は AWS Command Line Interface (AWS CLI) を使用することです。

AWS CLI を使用して GetSendStatistics API オペレーションを呼び出するには

  1. AWS CLI をインストールします (まだの場合)。詳細については、AWS Command Line Interface ユーザーガイドの「AWS Command Line Interface のインストール」を参照してください。

  2. AWS セキュリティ認証情報を使用するように AWS CLI を設定します (まだの場合)。詳細については、AWS Command Line Interface ユーザーガイドの「AWS CLI の設定」を参照してください。

  3. コマンドラインで、「aws ses get-send-statistics」と入力します。

    AWS CLI を正常に設定すると、送信統計が JSON 形式で一覧表示されます。JSON オブジェクトごとに 15 分間の集約された送信統計が含まれています。

プログラムを使用した GetSendStatistics オペレーションの呼び出し

AWS SDK を使用して GetSendStatistics オペレーションを呼び出すこともできます。このセクションでは、AWS SDK のコード例を Go、PHP、Python および Ruby で示します。以下のいずれかのリンクを選択すると、その言語でコード例が表示されます。

注記

これらのコード例では、AWS アクセスキー ID、AWS シークレットアクセスキー、および使用する AWS リージョンを含む AWS 共有認証情報ファイルが作成済みであるものとします。詳細については、「認証情報の共有ファイルの作成」を参照してください。

AWS SDK for Go を使用した GetSendStatistics の呼び出し

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) }

AWS SDK for PHP を使用した GetSendStatistics の呼び出し

<?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"); } ?>

AWS SDK for Python (Boto) を使用した GetSendStatistics の呼び出し

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))

AWS SDK for Ruby を使用した GetSendStatistics の呼び出し

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