AWS SES ロギング

Terrafrom + Firefose

Firehoseを使用してSESのログをS3バケットに記録するには、Terraformで以下のように記述することができます。

resource "aws_s3_bucket" "log_bucket" {
  bucket = "log-bucket"
}

resource "aws_ses_domain_identity" "example" {
  domain = "example.com"
}

resource "aws_ses_domain_identity_verification" "example" {
  domain = aws_ses_domain_identity.example.domain
}

resource "aws_ses_configuration_set" "example" {
  name = "example"
}

resource "aws_ses_event_destination" "example" {
  configuration_set_name = aws_ses_configuration_set.example.name
  name                  = "example"
  enabled               = true

  kinesis_firehose_destination {
    role_arn         = aws_iam_role.firehose_role.arn
    delivery_stream_arn = aws_kinesis_firehose_delivery_stream.firehose.arn
  }

  matching_types = [
    "send",
    "reject",
    "bounce",
    "complaint",
    "delivery",
    "open",
    "click",
  ]
}

このコードでは、S3バケットを作成し、SESドメイン識別子を作成し、検証し、構成セットを作成し、イベント宛先を作成しています。

イベント宛先は、Kinesis Firehoseにログを送信するように構成されています。²³

ソース: Bing との会話 2023/5/17

その他