AWS Lambda monitoring mechanism using SNS

Hello Devs,

I am going to tell you about AWS Lambda monitoring failure or success mechanism using SNS and email notification. Let's understand first background behind this.

Few months back, i developed one AWS Lambda code using Python. It was working perfect fine. I used one 30 days trial API for testing purpose. Generally API vendor keep sending reminder about expiring free trial period. On last day i didn't get mail or somehow i forgot to check my mail. Due to expiry of API service lambda service stop working this i got to know some of user respond back with failure of service. Then i stared exploring about how should i get information about any kind of failure if something happen wrong in execution of lambda.

After reading AWS SNS documentation, I found interesting thing about AWS is they introduced lambda trigger end point to SNS services which has multiple communication end point to subscribe like email, SMS, Web hook , External endpoint etc. 👇🏻

List of Endpoint

Lets start how to do this ?

Architecture flow diagram :

SNS SMS subscription

  1. Create lambda - can use any language like Python, Node, GoLang etc. Lambda Creation
  2. Create SNS topic : Go to SNS -> Create Topic -> Select name and display name -> Create Topic creation
  3. Creation subscription for topic: Select Topic -> Create subscription-> Select protocol show in above image-> Create
  4. Go to SNS -> Mobile -> Text Messaging -> Text messaging preferences -> Edit -> Add budget per day ( $1 per day ) SMS pricing
  5. Make sure lambda execution role has access to publish to SNS topic.
  6. Go to lambda -> Add Destination -> Asynchronous invocation -> Select Success or Failure -> Destination as SNS -> Select topic

They we are done! 👍🏻

Screenshot 2020-10-24 at 3.17.36 AM.png

Sample SMS text :

Setting for SMS.png SMS notification

Demo Video :

Thanks for reading article. Share your valuable feedback and suggestions! Don't forget like, share and subscribe.

No Comments Yet