Created Eventbridge + Lambda for S3 events, but the events are missing

0

Hi,

I'm creating a bucket with eventBridgeEnable = true, custom event bus and a simple rule like this

{
  "detail-type": ["Object Created", "Object Tags Added"],
  "source": ["aws.s3"],
  "detail": {
    "bucket": {
      "name": ["etl-glue-dev-1kq3vvnhpcn8j"]
    },
    "object": {
      "size": [{
        "numeric": [">", 30]
      }],
      "key": [{
        "prefix": "src/"
      }]
    }
  }
}

The target is Lambda with DLQ. Stack deployed and all resources and permissions set up correctly. But no events arrive from the bucket, when I upload objects.

  1. The doc here says

Many AWS services generate events that EventBridge receives. When an AWS service in your account emits an event, it goes to your account’s default event bus Does it mean I need to use default event bus with S3 events?

  1. Furthermore, its says

To record events with a detail-type value of AWS API Call via CloudTrail, a CloudTrail trail with logging enabled is required.

Does it mean cloudtrail must be enabled on S3 buckets to make above rule work?

已提問 2 年前檢視次數 1669 次
1 個回答
0

All AWS services send events to the default bus. You can't use a custom bus for these events.

S3a sends notifications directly to EventBridge, so you do not need to enable CloudTrail (although it is a best practices to have CloudTrail enabled in all regions).

profile pictureAWS
專家
Uri
已回答 2 年前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南