Event-Driven Architecture & Automation
CloudWatch Events (now Amazon EventBridge) delivers a near real-time stream of system events that describe changes in AWS resources. It enables you to respond to state changes in your AWS resources.
CloudWatch Events is now Amazon EventBridge. EventBridge is the preferred service with additional features, but CloudWatch Events still works for existing implementations.
JSON objects that represent a change in your AWS environment
Match incoming events and route them to targets for processing
AWS services that process events (Lambda, SNS, SQS, etc.)
Cron or rate expressions to trigger events on a schedule
Your applications can publish custom events using PutEvents API
A single rule can route events to up to 5 targets simultaneously
Event patterns are JSON objects that define which events to match. They filter events based on event structure and values.
Match EC2 instance state changes to "running": {"source": ["aws.ec2"], "detail-type": ["EC2 Instance State-change Notification"], "detail": {"state": ["running"]}}
cron(0 12 * * ? *) - Run at 12:00 PM UTC every day
rate(5 minutes) - Run every 5 minutes
Transform event data before sending to targets to customize the payload.
Extract specific fields from the event JSON
Define custom JSON structure for target input
Add static values to the transformed input
Automatically respond to security findings or compliance violations
Automatically tag new resources when they're created
Send alerts when specific AWS events occur
Trigger Step Functions workflows based on events
Use EventBridge for new implementations. CloudWatch Events remains available for backward compatibility.
Create precise event patterns to avoid unnecessary target invocations
Configure DLQs for targets to capture failed event deliveries
Track Invocations, FailedInvocations, and TriggeredRules metrics
Transform events to reduce target processing complexity
CloudWatch Events/EventBridge is the service for event-driven architectures and automated responses to AWS resource changes
A single rule can have up to 5 targets, and events are delivered in near real-time
Use scheduled events (cron/rate expressions) for time-based automation instead of Lambda scheduled triggers