ヤマムギ

growing hard days.

*

SendGridのイベントをAPI Gateway -> Lambda(Python) -> DynamoDBに格納する

   

SendGridのメールイベントログはコンソールで確認出来るのは直近7日分で一括ダウンロードとかもないので、SendGridでメールを送信し始める前にはEvent Webhookを設定してどこかにイベントログを蓄積しておいた方がいいと思います。

後々に開封率やメール内URLとかのクリック率とか受信数とか出さないといけなくなったときにデータがない、とかになってしまうので。

※最低限の設定例です。

Amazon DynamoDB

  • 任意の名前のテーブル(ex:’sendgird_table’)を作成します。
  • プライマリパーティションキーは sg_event_idにしました。

AWS Lambda

  • ロールにAmazonDynamoDBFullAccessのポリシーをアタッチしました。
  • Python 2.7

コード

テーブル名は「sendgird_table」としています。

SendGrid Event Webhookからはイベントが配列で送られます。

API Gateway

  • POSTでLambdaを指定します。
  • マッピングも何も特にせずデプロイします。

SendGridの設定

  • [MailSettings]の[Event Notification]をONにします。
  • HTTP POST URLにAPI Gatewayのエンドポイントを設定します。
  • イベントは[All]にチェックしました。
  • [Test Your Integration]でテスト出来ます。

以上でした。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , , , ,

ad

ad

  関連記事

AWS認定ソリューションアーキテクトアソシエイトのサンプル問題

AWS認定ソリューションアーキテクトアソシエイトのサンプル問題の解説を会社のブロ …

AWS Code Commitをプライベートリポジトリとして使う

GitHubでもいいんですが、アクセスキーとかパスワードとかコンフィグ系で書いて …

CloudWatch LogsをIPv6アドレスを使用して送信する

このブログの構成からパブリックIPv4を減らすように設計変更しています。 もとも …

Amazon WorkSpaces Web Accessを有効化する

仕事がら、Amazon WorkSpacesをディレクトリも含めて一時的にセット …

Pandocサーバーのコンテナイメージを作成する

マークダウンからEPUBへの変換をAWS Batchで行いたく、ECRにアップロ …

Kinesis Data Analyticsの検索結果をKinesis Data FirehoseからS3バケットに保存する

Kinesis Data AnalyticsをKinesis Data Stre …

「JAWS-UG 名古屋 2022年 “re:Invent”の復習~忘年会~」に参加しました

re:Inventのおみやげも飲み物、ピザ、お寿司もたくさん。 コラボベースさん …

S3イベントのAWS Lambdaのテスト設定

S3イベントのLambda関数でよく使うのはこんなテスト設定です。 なので覚書で …

Backlogの実績工数をAmazon QuickSightでの可視化 – 仕組み編

Backlogの実績工数をAmazon QuickSightで可視化してわかった …

AWSセルフマネージドAD環境にリモートデスクトップで接続

AWSクイックスタートのActive Directory Domain Serv …