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 Risposte
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
ESPERTO
con risposta un anno fa
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
con risposta un anno fa
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
ESPERTO
Uri
con risposta un anno fa

Accesso non effettuato. Accedi per postare una risposta.

Una buona risposta soddisfa chiaramente la domanda, fornisce un feedback costruttivo e incoraggia la crescita professionale del richiedente.

Linee guida per rispondere alle domande