为何无法创建匹配手动发送至AWS EventBus事件的规则(模式一致)
AWS EventBridge规则匹配失败的问题分析及解决
- 错误核心原因:你把完整的事件内容当成了事件匹配规则(Event Pattern),但EventBridge的规则匹配逻辑不是完全匹配整个事件,而是通过事件模式筛选符合特定字段条件的事件。另外,事件里的系统自动生成字段(比如
id、time、version)每次重发都会变化,根本不可能匹配。 - 正确操作步骤:
- 提取手动发送事件里的自定义核心字段,比如
source、detail-type、detail里的固定内容,忽略id、time、version、account、region这些系统自动生成的字段。 - 按照EventBridge事件模式的语法编写匹配规则,示例如下(假设你的自定义事件source是
my-app,detail-type是user-action,detail里有action: click):
{ "source": ["my-app"], "detail-type": ["user-action"], "detail": { "action": ["click"] } }- 用这个事件模式作为规则的匹配条件,而不是复制整个事件内容。
- 提取手动发送事件里的自定义核心字段,比如
- 额外注意:控制台里的“示例事件”是用来验证规则的,你可以用之前手动发送的完整事件作为示例,但匹配规则必须是精简的事件模式,不是完整事件。
内容的提问来源于stack exchange,提问作者Ytsen de Boer
相关产品推荐
相关产品推荐

