Scheduled Lambda Job
beginnerEventBridge scheduled rule triggering a Lambda function on a cron or rate schedule. Includes DynamoDB state table, CloudWatch error/duration alarms, and SNS alarm notifications.
Quick Start
Via CLI (recommended)
npx cdk-starter create Then select "Scheduled Lambda Job" from the prompt
Or scaffold directly
npx cdk-starter create --starter scheduled-lambda README
Scheduled Lambda Job
EventBridge scheduled rule triggers a Lambda function on a cron schedule. Includes a DynamoDB state table for tracking runs, and CloudWatch alarms for errors and duration.
Customise the schedule
Edit the rule in lib/scheduled-lambda-stack.ts:
schedule: events.Schedule.cron({ minute: '0', hour: '6' }) // daily 06:00 UTC
schedule: events.Schedule.rate(cdk.Duration.minutes(15)) // every 15 min
schedule: events.Schedule.cron({ minute: '0', hour: '*/4' }) // every 4 hours
Job logic
Edit src/job.ts.
Prerequisites
- Node.js ≥ 20
- AWS CLI configured (
aws configure) - CDK bootstrapped (
npx cdk bootstrap)
Deploy
npm install
npx cdk diff
npx cdk deploy
Tear down
npx cdk destroy