What Is AWS EventBridge?
AWS EventBridge is a serverless event bus service that simplifies event-driven application development by providing a central hub for routing events between applications. As a fully managed service, EventBridge handles the infrastructure complexity of event ingestion, filtering, and delivery, allowing developers to focus on building business logic rather than managing messaging infrastructure.
EventBridge operates on a publish-subscribe model where event sources emit events to an event bus, and rules determine which events get routed to which targets. This decoupled architecture enables loose coupling between services, making applications more resilient and easier to maintain. The service automatically scales to handle millions of events per second without requiring any capacity provisioning.
Key Components
- Event Bus - Central router for all events
- Rules - Matching criteria for event routing
- Targets - Services that receive matched events
- Event Sources - AWS services, custom apps, SaaS partners
Learn more about our serverless architecture capabilities.
Everything you need to build event-driven architectures
Serverless Operation
Fully managed service that automatically scales to handle millions of events per second without infrastructure management.
Precise Event Filtering
Pattern-based filtering using JSON syntax to match specific events based on source, detail-type, and content.
Multiple Target Types
Route events to Lambda, SQS, SNS, Step Functions, API Gateway, ECS tasks, and more.
Custom Event Sources
Publish custom events from your applications using the PutEvents API for internal event communication.
SaaS Integration
Receive events directly from supported SaaS partners without custom integration code.
EventBridge Pipes
Connect sources to targets with built-in filtering, transformation, and enrichment capabilities.
Event Structure and Format
Every EventBridge event follows a structured JSON format containing metadata and event data. Understanding this structure is crucial for writing effective event patterns and processing events correctly.
Event Anatomy
| Field | Description |
|---|---|
source | Identifies the event origin (AWS service, custom app, SaaS partner) |
detail-type | Human-readable description of the event type |
detail | Event-specific payload containing the actual data |
account | AWS account ID that generated the event |
region | AWS region where the event originated |
time | Timestamp of when the event occurred |
Example Event
{
"version": "0",
"id": "6a7e8feb-b491-4cf7-a9f1-bf3703467718",
"detail-type": "EC2 Instance State-change Notification",
"source": "aws.ec2",
"account": "111122223333",
"time": "2017-12-22T18:43:48Z",
"region": "us-west-1",
"resources": ["arn:aws:ec2:us-west-1:123456789012:instance/i-1234567890abcdef0"],
"detail": {
"instance-id": "i-1234567890abcdef0",
"state": "terminated"
}
}
Event patterns mirror this structure, allowing you to match on any field or nested value within the event payload. According to the AWS EventBridge documentation on event patterns, this JSON-based approach enables precise filtering and routing of events across your infrastructure.
Event Pattern Matching
Event patterns define the criteria for matching events using a JSON structure that mirrors the event format. Patterns can match against any event field, enabling precise filtering based on multiple criteria.
Pattern Structure
A basic event pattern specifies the fields to match and their expected values. Only events matching all specified criteria will be routed to targets.
{
"source": ["aws.ec2"],
"detail-type": ["EC2 Instance State-change Notification"],
"detail": {
"state": ["terminated"]
}
}
Content-Based Filtering
Content-based filtering examines actual values within event payloads:
- Prefix matching - Match events based on leading characters
- Suffix matching - Match based on trailing characters
- Numeric comparisons - Range checks and comparisons
- Array membership - Check if values exist in arrays
Advanced Pattern Operators
Use the $or operator to match events satisfying any of multiple conditions:
{
"$or": [
{"source": ["aws.sqs"], "detail": {"eventName": ["CreateQueue"]}},
{"source": ["aws.s3"], "detail": {"eventName": ["CreateBucket"]}}
]
}
As described in the AWS EventBridge user guide on event patterns, these filtering capabilities enable sophisticated event routing strategies that reduce unnecessary processing and improve system efficiency.
Targets and Event Routing
EventBridge supports numerous target types for delivering matched events. Each target serves different purposes from async processing to complex workflows. Our serverless development services help you implement these patterns effectively.
Supported Target Types
| Target | Use Case |
|---|---|
| AWS Lambda | Serverless function execution for event processing |
| Amazon SQS | Reliable message queuing with built-in retries |
| Amazon SNS | Fan-out to multiple subscribers |
| Step Functions | Complex workflow orchestration |
| API Gateway | HTTP endpoint triggers |
| ECS Tasks | Container-based processing |
Dead Letter Queues
Dead letter queues (DLQs) capture events that fail delivery after all retry attempts. Configure DLQs for critical event processing to ensure failed events can be investigated and reprocessed. According to DataCamp's guide on EventBridge reliability patterns, implementing DLQs is essential for production deployments where event loss is unacceptable.
Retry Policies
EventBridge automatically retries event delivery with configurable policies:
- Default: 2 retries (1 second, then 5 seconds for Lambda)
- Custom: Configure retry count and intervals per target
- Events failing all retries are sent to DLQ
For Lambda targets, EventBridge retries twice with intervals of one second and five seconds. The Tutorials Dojo EventBridge cheat sheet provides detailed guidance on configuring retry policies for different target types.
EventBridge Pipes
EventBridge Pipes provides a simplified approach to connecting event sources to targets with built-in filtering, transformation, and enrichment capabilities. Pipes bridge the gap between event producers and consumers, enabling sophisticated event processing without requiring custom integration code. The DataCamp EventBridge tutorial covers Pipes in detail as part of the event-driven architecture implementation.
How Pipes Differ from Rules
| Aspect | Rules | Pipes |
|---|---|---|
| Scope | Event bus-wide | Single source |
| Targets | Multiple per rule | Single per pipe |
| Filtering | Pattern matching | Source-level filtering |
| Enrichment | Not supported | Native enrichment |
Pipe Capabilities
- Source Filtering - Filter events at the source before processing
- Enrichment - Add context from Lambda, API Gateway, or Step Functions
- Transformation - Modify event structures before delivery
- Parallel Processing - Handle high-volume event streams
Common Pipe Sources
- Kinesis Streams - Real-time data ingestion
- SQS Queues - Message-based workflows
- DynamoDB Streams - Database change capture
- MQTT Topics - IoT messaging
As documented in the Tutorials Dojo EventBridge resources, Pipes are particularly valuable for integrating streaming data sources with downstream services, reducing the custom code required for event processing pipelines.
Best Practices for Production
Design Precise Event Patterns
The most important practice is designing patterns that are as precise as possible. Start with source and detail-type filters, then add detail-level conditions for specificity. The AWS EventBridge best practices documentation emphasizes that precise patterns prevent infinite loops and reduce unnecessary processing costs.
Good pattern:
{
"source": ["aws.ec2"],
"detail-type": ["EC2 Instance State-change Notification"],
"detail": {"state": ["terminated"], "instance-id": ["i-*prod*"]}
}
Organize Event Buses
- Separate buses for different environments (dev/prod)
- Custom buses per service or domain
- Use Organizations for cross-account event sharing
Our architecture consulting services help you design event bus strategies that scale.
Security Considerations
- Implement least-privilege IAM policies
- Use resource-based policies on custom buses
- Enable encryption for sensitive events
- Rotate API Destination credentials regularly
Monitoring Strategy
- Configure CloudWatch alarms on key metrics
- Use dead letter queues for failed events
- Log event content for debugging (with retention policies)
- Monitor event volumes for anomalies
Following the AWS best practices for EventBridge ensures your event-driven architecture remains reliable, secure, and cost-effective at scale.
Common Use Cases
Infrastructure Automation
React to AWS service events for auto-remediation and compliance enforcement:
- Detect and revert unauthorized security group changes
- Identify and clean up unused resources
- Enforce tagging policies through configuration change detection
Our DevOps services help you implement automated infrastructure responses.
Workflow Orchestration
Trigger Step Functions workflows based on events:
- Order processing pipelines
- Document approval workflows
- Customer onboarding processes
- Multi-step business operations
Microservices Communication
Enable loose coupling between services through events:
- Publish domain events (order created, status changed)
- Consume events for denormalized views
- Support eventual consistency models
- Enable polyglot service communication
Explore our microservices expertise for building distributed systems.
Third-Party Integration
Send events to external services via API Destinations:
- Incident management platforms (PagerDuty, OpsGenie)
- Customer communication tools (Slack, Teams)
- Custom business applications
- Monitoring and analytics platforms
According to the DataCamp EventBridge guide, API Destinations extend EventBridge's capabilities beyond AWS, enabling integration with virtually any external system that accepts HTTP requests.
Performance and Cost
Pricing Dimensions
| Component | Cost | Notes |
|---|---|---|
| Event Ingestion | $1.00 per million events | Custom + SaaS events |
| API Destinations | $0.20 per million invocations | External API calls |
| Pipes Enrichment | Varies by enrichment type | Based on source |
| AWS-managed events | Free | Native AWS service events |
Cost Optimization Tips
- Filter early - Process only relevant events
- Batch processing - Use SQS for high-volume scenarios
- Monitor volumes - Track event pattern effectiveness
- Review patterns - Remove overly broad filters
Scaling Considerations
- EventBridge auto-scales to handle millions of events/second
- Ensure targets can handle expected throughput
- Use queuing targets to buffer during scaling
- Distribute events across multiple buses if needed
The Tutorials Dojo EventBridge cheat sheet provides additional guidance on optimizing EventBridge for cost-effective, scalable event-driven architectures.