不同用例的 EventBridge 自定义事件模式示例 - Amazon Resource Groups
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

不同用例的 EventBridge 自定义事件模式示例

以下示例 EventBridge 自定义事件模式会筛选由 Resource Groups 生成的事件,仅显示您对特定事件规则和目标感兴趣的事件。

在以下代码示例中,如果需要特定的组或资源,请将每个user input placeholder组或资源替换为您自己的信息。

所有 Resource Groups 事件
{ "source": [ "aws.resource-groups" ] }
组状态或成员资格更改事件

以下代码示例适用于所有组状态更改。

{ "source": [ "aws.resource-groups" ], "detail-type": [ "ResourceGroups Group State Change " ] }

以下代码示例适用于所有组成员资格更改。

{ "source": [ "aws.resource-groups" ], "detail-type": [ "ResourceGroups Group Membership Change" ] }
特定组的事件
{ "source": [ "aws.resource-groups" ], "detail": { "group": { "arn": [ "my-group-arn" ] } } }

前面的示例捕获了对指定组的更改。以下示例执行相同的操作,并且还会捕获该组是另一个组的成员资源时的更改。

{ "source": [ "aws.resource-groups" ], "resources": [ "my-group-arn" ] }
特定资源的事件

您只能筛选特定成员资源的组成员资格更改事件。

{ "source": [ "aws.resource-groups" ], "detail-type": [ "ResourceGroups Group Membership Change " ], "resources": [ "arn:aws:ec2:us-east-1:123456789012:instance/i-b188560f" ] }
特定资源类型的事件

您可以使用前缀匹配 ARNs 来匹配特定资源类型的事件。

{ "source": [ "aws.resource-groups" ], "resources": [ { "prefix": "arn:aws:ec2:us-east-1:123456789012:instance" } ] }

或者,您可以通过使用 resource-type 标识符来使用精确匹配,从而可以简洁地匹配多个类型。与前面的示例不同,以下示例仅匹配组成员资格更改事件,因为组状态更改事件的 detail 字段中不包含字段 resources

{ "source": [ "aws.resource-groups" ], "detail": { "resources": { "resource-type": [ "AWS::EC2::Instance", "AWS::EC2::Volume" ] } } }
所有资源移除事件
{ "source": [ "aws.resource-groups" ], "detail-type": [ "ResourceGroups Group Membership Change" ], "detail": { "resources": { "membership-change": [ "remove" ] } } }
特定资源的所有资源移除事件
{ "source": [ "aws.resource-groups" ], "detail-type": [ "ResourceGroups Group Membership Change" ], "detail": { "resources": { "membership-change": [ "remove" ], "arn": [ "arn:aws:ec2:us-east-1:123456789012:instance/i-b188560f" ] } } }

您不能使用本节第一个示例中使用的顶级 resources 数组进行此类事件筛选。这是因为顶级 resources 元素中的资源可能是添加到组中的资源,并且该事件仍然会匹配。换句话说,以下代码示例可能会返回意外事件。相反,请使用上一个示例中显示的语法。

{ "source": [ "aws.resource-groups" ], "detail-type": [ "ResourceGroups Group Membership Change" ], "resources": [ "arn:aws:ec2:us-east-1:123456789012:instance/i-b188560f" ], "detail": { "resources": { "membership-change": [ "remove" ] } } }