SESがついに東京リージョンでも使用できるようになったようです!(2020/07/02追記)
SESではバウンス率が高くなると、SESの利用を停止されてしまう可能性があります。
そのため、バウンスを検知する仕組みの構築が不可欠です。
バウンスとは何か?
そもそもバウンスとは、エラーや不達メールのことを指します。
バウンスには一時的なソフトバウンスと恒久的なハードバウンスが存在し、特に対策が必要となるのがハードバウンスの方です。
これに対応しないと、永遠に不達メールを送り続けることになります。
これは、公共のネットワークを使って意味のないデータ送信し続けていることになるので、直接的ではないにしても迷惑行為と等しくなります。
そのため、利用停止の対象となり得るのです。
SESのバウンスをCloudWatchメトリクスに表示する方法
デフォルトでは、SESのバウンスや苦情はCloudWatchのメトリクスには表示されません。
CloudWatchメトリクスに表示させるには、AWSコンソールから設定をする必要があります。
以下、設定方法を解説していきます。
SESの「Configuration Sets」を選択します。
「Create Configuration Set」を選択します。
Configuration Set Nameを入力して、次に進みます。
Configurationが作成されるので、選択します。
Select a destination から CloudWatch を選択します。
ディメンジョンの設定を行います。
メトリクスの指標として何を表示するかの選択ですね。
今回は、Send(送信)、Bounce(バウンス)、Complaint(苦情)を選択します。
これでSESのメトリクスをCloudWatchに表示させる設定が完了しました。
次に、本当にメトリクスに表示されるのかを確認します。
SESからテストメールを送信してみましょう。
SESにはテスト用のメールアドレスが用意されています。
これを使えば、テスト的にバウンスや苦情を発生させることができます。
これらのメールアドレスは、サンドボックス内からでも使用可能です。
参考:AmazonSESでのEメール送信のテスト
「Email Addresses」を選択し、「Send a Test Email」を選択します。
送信するメール内容を入力し、送信します。
これで、バウンスメールの送信が完了しました。
次に、バウンスがメトリクスに表示されているかを確認します。
CloudWatch > メトリクス > SES > アカウントメトリクス を選択します。
以下のようにバウンスや苦情の項目が表示されていれば設定はうまくいっています。
あとは、これらのメトリクスに対してアラームを設定すればOKです。
バウンスや苦情だけでなく、それらの発生率(図中のReputation.BounceRate、ComplaintRate)の項目があるのでそちらを監視してもよいでしょう。
アラームの設定方法は以下を参照ください。