Skip to content
Application Integration Services

icon picker
Amazon EventBridge

EventBridge (formerly called Amazon CloudWatch Events) is a serverless service that uses events to connect application components together, making it easier for you to build scalable event-driven applications. Event-driven architecture is a style of building loosely-coupled software systems that work together by emitting and responding to events. Event-driven architecture can help you boost agility and build reliable, scalable applications.
Use EventBridge to route events from sources such as home-grown applications, AWS services, and third-party software to consumer applications across your organization. EventBridge provides simple and consistent ways to ingest, filter, transform, and deliver events so you can build applications quickly.
EventBridge includes two ways to process events: event buses and pipes.
are routers that receive and delivers them to zero or more targets. Event buses are well-suited for routing events from many sources to many targets, with optional transformation of events prior to delivery to a target. ​
image.png
is intended for point-to-point integrations; each pipe receives events from a single source for processing and delivery to a single target. Pipes also include support for advanced transformations and enrichment of events prior to delivery to a target.
Pipes and event buses are often used together. A common use case is to create a pipe with an event bus as its target; the pipe sends events to the event bus, which then sends those events on to multiple targets. For example, you could create a pipe with a DynamoDB stream for a source, and an event bus as the target. The pipe receives events from the DynamoDB stream and sends them to the event bus, which then sends them on to multiple targets according to the rules you've specified on the event bus.

How event buses work?

Event buses enable you to route events from multiple sources to multiple destinations, or targets.
At a high level, here's how it works:
An event source, which can be an AWS service, your own custom application, or a SaaS provider, sends an event to an event bus.
EventBridge then evaluates the event against each rule defined for that event bus.
For each event that matches a rule, EventBridge then sends the event to the targets specified for that rule. Optionally, as part of the rule, you can also specify how EventBridge should transform the event prior to sending it to the target(s).
An event might match multiple rules, and each rule can specify up to five targets. (An event may not match any rules, in which case EventBridge takes no action.)
image.png

How EventBridge Pipes work?

At a high level, here's how EventBridge Pipes works:
You create a pipe in your account. This includes:
Specifying one of the supported from which you want your pipe to receive events.
Optionally, configuring a filter so that the pipe only processes a subset of the events it receives from the source.
Optionally, configuring an enrichment step that enhances the event data before sending it to the target.
Specifying one of the supported to which you want your pipe to send events.
The event source begins sending events to the pipe, and the pipe processes the event before sending it to the target.
If you have configured a filter, the pipe evaluates the event and only sends it to the target if it matches that filter.
You are only charged for those events that match the filter.
If you have configured an enrichment, the pipe performs that enrichment on the event before sending it to the target.
If the events are batched, the enrichment maintains the ordering of the events in the batch.
image.png

EventBridge rules

You specify what EventBridge does with the events delivered to each event bus. To do this, you create rules. A rule specifies which events to send to which for processing. A single rule can send an event to multiple targets, which then run in parallel.
You can create two types of rules:
Rules that match on event data
You can create rules that match against incoming events based on event data criteria (called an event pattern). An event pattern defines the event structure and the fields that a rule matches. If an event matches the criteria defined in the event pattern, EventBridge sends it to the target(s) you specify.
Rules that run on a schedule
You can also create rules that sends events to the specified targets at specified intervals. For example, to periodically run an Lambda function, you can create a rule to run on a schedule.
info

Note

EventBridge offers Amazon EventBridge Scheduler, a serverless scheduler that allows you to create, run, and manage tasks from one central, managed service. EventBridge Scheduler is highly customizable, and offers improved scalability over EventBridge scheduled rules, with a wider set of target API operations and AWS services.
We recommend that you use EventBridge Scheduler to invoke targets on a schedule. For more information, see .

Amazon EventBridge managed rules

In addition to the rules you create, AWS services can create and manage EventBridge rules in your AWS account that are needed for certain functions in those services. These are called managed rules.
When a service creates a managed rule, it can also create an that grants permission to that service to create the rule. IAM policies created this way are scoped narrowly with resource-level permissions to allow the creation of only the necessary rules.
You can delete managed rules by using the Force delete option, but you should only delete them if you're sure that the other service no longer needs the rule. Otherwise, deleting a managed rule causes the features that rely on it to stop working.


Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.