DEV Community

Martin Muller ๐Ÿ‡ฉ๐Ÿ‡ช๐Ÿ‡ง๐Ÿ‡ท๐Ÿ‡ต๐Ÿ‡น
Martin Muller ๐Ÿ‡ฉ๐Ÿ‡ช๐Ÿ‡ง๐Ÿ‡ท๐Ÿ‡ต๐Ÿ‡น

Posted on • Edited on • Originally published at martinmueller.dev

My first Experience with Powertools for AWS Lambda (TypeScript)

Hi there,

I'm new to Powertools for AWS Lambda (TypeScript). Though I hear a lot of my DevOps friends say that it's a great tool for building serverless applications, I've never had the chance to use it myself. So I decided to give it a try and see what all the fuss is about. What can I say, I totally love it. In the next sections I will explain what the.

What is Powertools for AWS Lambda

Powertools for AWS Lambda is a collection of utilities, patterns, and best practices for writing AWS Lambda functions in Python, Typescript, Java and DotNet. It includes logging, tracing, custom metrics, and more. The goal of this project is to enable developers to build scalable and robust serverless applications easily.

Why I am using AWS Lambda Powertools

I'm a huge DevOps fanboy so I'm all over for techniques like Infrastructure as Code (IaC) or Serverless. Pretty cool about those that it helps me to focus on my business logic of my software product rather then wasting time in setting it up. Powertools feels pretty similar as it helps me to easy implement certain goodies as logging or tracing without the need to spend much time.

Certainly my main motivation is the Powertools logger library. The logger library helps you to write my Lambda logs in specific format to enable features like log levels and log queries with AWS CloudWatch Logs Insights. So far that is amazingly great and it gives me a powerful insight into my Lambda.

I'm using Powertools for me newest AI MVP. Part of the MVP is a Lambda where I call the AWS Bedrock API. Furthermore I automatically validate the LLM response. For more details see https://martinmueller.dev/aws-bedrock-validation.

How to start?

The Powertools GitHub repository offers nice examples to integrate and learn from. For example here are nice example written in AWS CDK. Following I will list the features I gained some experience with.

Logger

The logger is super fun to use! It gives me a powerful insight into my lambdas. Though I'm still not super sure when to use the different log levels and when and what objects I should put into the object logger part. But I will keep learning from my DevOps friends and make my own experience. Ultimately I will know better when I truly need insight via Logs Insights.

Parameters

The parameters feature is super cool. It helps me to easily access the parameters I defined in my AWS CDK stacks. I can access them via the get function. So far I only used it for getting secrets from the secrets manager but I'm super excited to use it for more like perhaps app configurations.

Idempotency

The idempotency feature seems super useful. It could help to reduce the quite high costs of using the AWS Bedrock API. But unfortunately idempotency isn't currently combinable with Lambda stream response. Hopefully that will change in future ๐Ÿคž.

Resources to learn utilizing Powertools

Here's a list of examples I found helpful to learn how to apply Powertools:

Examples from the GitHub Repo:

Powertools has ana amazing Discord community. Make sure to not miss it!:

Lee Gilmore:

Conclusion

Working with AWS Lambda Powertools Typescript totally make sense and I love it. It will definitely be my default choice when developing my next Lambda. I still need to learn how to use it properly! Please if you have any feedback how I can utilize Powertools better, reach out to me!

I am passionate about contributing to Open Source projects. You can find many of my projects on GitHub that you can already benefit from.

If you found this post valuable and would like to show your support, consider supporting me back. Your support will enable me to write more posts like this and work on projects that provide value to you. You can support me by:

Buy me a Ko-Fi

OR

Pateron

And don't forget to visit my site

martinmueller.dev

TitlePic

Top comments (1)

Collapse
 
janine22 profile image
Janine Hawkins

My son introduced crypto to me some years ago, so I invested in USDT and BTC, using Binance. Due to my busy schedule, I could not keep some of the secret codes used in accessing the account, my son told me that I had lost all my investments. It was so heartbreaking because I invested all my savings about ($28,500) in my savings. I narrated the ordeal in one of my classes and a student of mine suggested ALLEGIANT PRO HACKER to me because his mother also fell victim to a cryptocurrency mining scam, ALLEGIANT PRO HACKER helped her to recover her money back, I decided to give it a trial, to my greatest surprise that same day my codes was made to reset, a default login was given to me and I was able to access my wallet without any upfront payment, kindly reach out to them if you are going through a similar problem.
EMAIL: allegiantprohacker@proton.me
Telegram +1-562-553-9611