Amazon SNS+CloudWatchのメール通知でちょっと役立つ設定
目次
どうも、システムソリューション部のUZIです。
今回のブログのテーマですが
● SNSトピックの unsubscribe の無効化設定
についてです。
たとえば、SNSトピックで設定しているサブスクリプションの通知先として、メールを指定しているとします。当SNSトピックを CloudWatch のメトリクスのアラーム通知先として設定していると、メトリクスに異常があった場合に、AWS からメール通知をしてくれます。
今回はメール通知が有効になっている(サブスクリプション登録状態)ものが、誤って無効化(unsubscribe)されないようにする設定をご紹介します。
unsubscribe とは
unsubscribeとはSNSトピックに設定しているサブスクリプションを解除することです。
具体的には、赤枠にあるメールのリンクを押しただけで、サブスクリプションが解除されてしまいます!
● SNSトピックからのメール
● サブスクリプションが解除された画面
unsubscribe されることによる問題点
誰かが間違って押してしまったら、再度サブスクリプションを登録しない限り、一生通知が飛んでくることはありません・・・。
もし、間違って解除してしまったことで、お客様のコンテンツ異常の発見が遅れたり、従量課金が発生していることを知らせてくれる通知メールだったらどうでしょうか。
お客様にとっての機会損失や AWS からの請求書を見てみると、大量の課金が…という恐ろしい事態が起こりかねません。
● サブスクリプション解除前
サブスクリプション解除前はIDが表示されていますが
● 解除後・・・
削除済みと表示されます
● 解除通知メール
一応メールにもサブスクリプションの解除通知が送信されます。(少し親切)
また、そのメール内にある Resubscribe を押すと、サブスクリプションが再登録されます。
● Resubscribe 後の画面
unsubscribe の無効化設定
さて、前置きが長くなりましたが、本題の unsubscribe の無効化設定の話に移ります。
サブスクリプション作成時にエンドポイントに指定したメールアドレスに対して、確認メールが届くかと思いますが、
メール内の Confirm subscription のリンクをクリックせずに、そのリンクURLをコピーします。
そして作成しようとしているサブスクリプション(保留中の確認状態)を選択し、サブスクリプションの確認をクリックすると、サブスクリプションの確認のポップアップが表示されます。
そこにコピーしたURLを貼り付けて、サブスクリプションの確認をクリックします。
・
・
・
はい、これで unsubscribe の無効化設定ができています!!
実際にサブスクリプションのところからメッセージの発行をし、届いたメール内にあるサブスクリプション解除のリンクを押してみると・・・
画像のように「サブスクリプション解除できません」と表示されます👏👏
既存のSNSトピックに対しての無効化設定
残念ながら、既存のSNSサブスクリプションに対して、unsubscribe の無効化設定への切り替えはできないみたいです・・・。
一応、代替策として以下の2つがあるようです。
詳細は以下の記事で紹介されていますので、気になる方は見てみてください!
- 既存 SNS サブスクリプションの削除 → 新規 SNS サブスクリプションの作成をなるべく間を置かずに実施する
- 別のエンドポイントの SNS サブスクリプションを一時的に追加し、「削除→新規」の作業中の通知をそちらで受ける
○ 参照:SNS トピックには同じエンドポイントを持つ SNS サブスクリプションを複数関連づけられない
まとめ
以上、SNSトピックの unsubscribe の無効化設定のご紹介でした。
AWS で SNS を使った構築や監視設定を行う際の参考になりますと幸いです。
それでは、また