Joey Yi Zhao
Joey Yi Zhao

Reputation: 42474

How can I trigger a lambda when a log group is created in cloudwatch?

How can I trigger a lambda when a log group is created in cloudwatch? What I am thinking the easiest way to do is to create a cloudwatch rule to send cloudtrail event to lambda. Is it reasonable to do? If yes, how can I filter out other events but only trigger lambda when a log group is created?

Upvotes: 3

Views: 1320

Answers (1)

Marcin
Marcin

Reputation: 238149

The only event type supported by CloudWatch Events (CWE) for CW Logs (CWL) is:

AWS API Call via CloudTrail

Therefore, you can catch the events of interests when you enabled CloudTrail (CT) trail. Once enable, API events would be available in CWE. Then, you would have to create CWE rule which captures CreateLogGroup API call. The rule would trigger your lambda function.

An example CWE rule could be:

{
  "source": [
    "aws.logs"
  ],
  "detail-type": [
    "AWS API Call via CloudTrail"
  ],
  "detail": {
    "eventSource": [
      "logs.amazonaws.com"
    ],
    "eventName": [
      "CreateLogGroup"
    ]
  }
}

Upvotes: 4

Related Questions