默认与自定义 EventBridge 总线

Default vs custom EventBridge bus

我有一个跨账户 EventBridge 总线,它从不同区域和账户的多个 EventBridge 总线接收事件。我目前正在为源(发送)总线和目标(接收)总线使用默认总线。我正在监视的事件来自 Batch 和 EC2 服务,我还通过 PutEvents 发送了一个自定义事件。 target/cross-account 总线将事件发送到 HTTP 端点。这一切都很好。我使用默认总线的原因是我认为只有默认总线可以接收来自 AWS 服务的事件。但是,我的基础设施由开发、暂存和生产环境的独立“堆栈”组成,因此我真的更喜欢在每个环境中创建自己的总线。所以必须使用默认事件总线是非常有限的。

我想确认我的理解是正确的:

  1. 对于源事件总线:只有默认事件总线可以接收 来自 AWS 服务的事件。
  2. 对于 target/cross-account 事件总线:因为它正在接收 AWS 服务事件(从 sourceevent 总线转发),它也必须是默认事件总线。

我基于 EventBridge 文档中的这些陈述:

Many AWS services generate events that EventBridge receives. When an AWS service in your account emits an event, it goes to your account’s default event bus.

The default event bus accepts events from AWS services, other authorized AWS accounts, and PutEvents calls.

只有默认事件总线可以接收来自 AWS 服务的事件。

但是您可以创建 EventBridge 规则以将消息从默认总线转发到自定义总线。

您可以为您的应用创建自定义总线,并将 all/required 消息从默认总线转发到您的应用总线。

您可以为跨账户消息传递提供事件总线 ARN,因此它可以是自定义事件总线,而不是默认事件总线