Cloudwatch event rule for Lambda function

0

Hi everyone,

I want to send trigger to cloudwatch event on successful completion of Lambda function( automated password rotation lambda) to send out the SNS. Please help to select the particular event pattern so that it can be used to trigger SNS.

3回答
1

I don't think there are any events detected by EventBridge when a Lambda function completes by default.
So I think we can edit the code to use "put_events" to issue a custom event when the Lambda function terminates.
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/events/client/put_events.html

For example, the following code would do it.

import boto3
import json

client = boto3.client('events')

detail = {
    'status': 'Success'
}

response = events.put_events(
    Entries=[
        {
            'Source': 'lambda.amazonaws.com',
            'DetailType': 'FunctionEnd',
            'Detail': json.dumps(detail),
            'EventBusName': 'default' 
        }
    ]
)

In addition, I think we can detect this event by setting the following event pattern to catch this event in EventBridge.

{
  "source": ["lambda.amazonaws.com"],
  "detail-type": ["FunctionEnd"],
  "detail": {
    "status": ["Success"]
  }
}
profile picture
エキスパート
回答済み 1年前
0

There are couple of ways you can do this.

  1. You can publish the cloudwatch events (event bridge) from your lambda using this example - https://serverlessland.com/patterns/lambda-eventbridge
  2. You can use step function to orchestrate your workflow. First step invoke your lambda for password rotation , if it is success then publish cloudwatch events (event bridge).
  3. You can directly publish your events to SNS as well using this example - https://serverlessland.com/patterns/lambda-sns
AWS
回答済み 1年前
0

If your function is invoked asynchronously, you can use Lambda Destinations to send the completion event to SNS, EventBridge, SQS or another Lambda function. If your function is invoked synchronously, you will need to do it yourself in the function itself.

profile pictureAWS
エキスパート
Uri
回答済み 1年前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ