What Is Amazon EventBridge? - Amazon EventBridge

What Is Amazon EventBridge?

Amazon EventBridge is a serverless event bus service that you can use to connect your applications with data from a variety of sources. EventBridge delivers a stream of real-time data from your applications, software as a service (SaaS) applications, and AWS services to targets such as AWS Lambda functions, HTTP invocation endpoints using API destinations, or event buses in other AWS accounts.

Note

EventBridge was formerly called Amazon CloudWatch Events. The default event bus and the rules you created in CloudWatch Events also display in the EventBridge console. EventBridge uses the same CloudWatch Events API, so your code that uses the CloudWatch Events API stays the same. New features added to EventBridge are not added to CloudWatch Events.

How it works

EventBridge receives an event, an indicator of a change in environment, and applies a rule to route the event to a target. Rules match events to targets based on either the structure of the event, called an event pattern, or on a schedule. For example, when an Amazon EC2 instance changes from pending to running, you can have a rule that sends the event to a Lambda function.

All events that come to EventBridge are associated with an event bus. Rules are tied to a single event bus, so they can only be applied to events on that event bus. Your account has a default event bus which receives events from AWS services, and you can create custom event buses to send or receive events from a different account or Region.

When an AWS Partner wants to send events to an AWS customer account, they set up a partner event source. Then the customer must associate an event bus with the partner event source.

EventBridge API destinations are HTTP endpoints that you can set as the target of a rule, in the same way that you would send event data to an AWS service or resource. By using API destinations, you can use REST API calls to route events between AWS services, integrated SaaS applications, and your applications outside of AWS. When you create an API destination, you specify a connection to use for it. Each connection includes the details about the authorization type and parameters to use to authorize with the API destination endpoint.

To customize the text from an event before EventBridge passes it to a target, use the input transformer to edit the information before it goes to the target.

You can archive, or save, events and then replay them at a later time from the archive. Archiving is useful for testing an application because you have a store of events to use rather than having to wait for new events.

When you build serverless applications that use EventBridge, it can be helpful to know the event pattern of typical events without having to generate the event. The event patterns are described in schemas, which are available for all events generated by AWS services on EventBridge. You can also create or upload custom schemas for events that don't come from AWS services. Once you have a schema for an event, you can download code bindings for popular programming languages.

To organize AWS resources or to track costs in EventBridge, you can assign a custom label, or tag, to AWS resources. Using tag-based policies, you can control what resources can and can’t do within EventBridge.

In addition to tag-based policies, EventBridge supports identity-based and resource-based policies to control access to EventBridge. Use identity-based policies to control the permissions of a group, role, or user. Use resource-based policies to give specific permissions to each resource , such as a Lambda function or Amazon SNS queue.