Warning AWS Lambda Live Tuner is still in very early development, functionality might change between releases until version 1.0.0. Ideas and feedback are very welcome
AWS Lambda Live Tuner tests memory configurations based on real incoming events instead of a single test event.
Let's imagine we are testing a Lambda function that processes a queue, since the Lambda function is idempotent, messages that have already been processed will be successfully processed again. Using the same test event on all invocations might falsify the results because all subsequent invocations after the initial one might be way faster (event was already processed before). Using different incoming events instead helps you test the actual behavior of the Lambda.
This project is heavily inspired by the open source tool aws-lambda-power-tuning
- Configured AWS credentials
brew tap janritter/aws-lambda-live-tuner https://github.com/janritter/aws-lambda-live-tuner
brew install aws-lambda-live-tuner
- Open the latest release page
- Download the archive with the pre-build binary for your operating system and architecture
- For Linux with amd64 architecture this would be
aws-lambda-live-tuner_<version>_linux_amd64.tar.gz
- For Linux with amd64 architecture this would be
- Unzip the downloaded archive
- Start using aws-lambda-live-tuner
This option requires go to be installed
git clone git@github.com:janritter/aws-lambda-live-tuner.git
make build
The binary is saved in bin
inside the project folder
aws-lambda-live-tuner --help
aws-lambda-live-tuner --lambda-arn arn:aws:lambda:eu-central-1:1234567890:function:my-lambda-name
- Lambda@Edge functions are currently not supported
- Lambda function aliases are currently not supported
- Lambda tiered pricing is not considered
- Because we can't know in which Lambda pricing tier you are operating, we will always use Tier 1. Since higher tiers just reduce the GB/second price, the lowest price results will still be valid for you.
mockery
Author: Jan Ritter
License: MIT