This project sets up a reliable, serverless event-driven architecture using AWS Lambda and S3, provisioned via Terraform. It demonstrates core Site Reliability Engineering (SRE) principles like observability, graceful failure handling, and infrastructure as code (IaC).
When a new object is uploaded to an S3 bucket, a Lambda function is triggered to process the event. The function includes retry logic and structured logging, helping ensure that transient failures are automatically retried and logged for analysis.
- β AWS Lambda function written in Python 3.9
- β S3 bucket trigger on object upload
- β Terraform-based infrastructure provisioning
- β
Retry logic with exponential backoff using
tenacity - β Observability via structured logs (viewable in CloudWatch)
- β Beginner-friendly project structure and documentation
- AWS CLI configured (
aws configure) - Terraform installed
- Python 3.9+
- Git
- Clone the repo
git clone https://github.com/ankushnema/aws-lambda-s3-terraform-sre-starter.git cd aws-lambda-s3-terraform-sre-starter