Amazon EventBridge Schemas - Amazon EventBridge
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

Amazon EventBridge Schemas

一个event表示环境中的更改,例如Amazon环境、SaaS 合作伙伴服务或应用程序或您的某个应用程序或服务。以下是事件的示例:

  • 当实例的状态从挂起变为正在运行时,Amazon EC2 会生成一个事件。

  • Amazon EC2 Auto Scaling 会在启动或终止实例时生成事件。

  • Amazon CloudTrail会在您进行 API 调用时发布事件。

您还可以设置定期生成的计划事件。

有关生成事件的服务的列表,包括来自每项服务的示例事件,请参阅来自 的事件Amazon服务

事件表示为 JSON 对象,它们都具有相似的结构和相同的顶级字段。

detail 顶级字段的内容因生成事件的服务以及所生成的事件而异。source 字段和 detail-type 字段的组合用于标识在 detail 字段中找到的字段和值。有关 Amazon 生成的事件示例,请参阅来自 的事件Amazon服务

事件中将显示以下字段:

版本

默认情况下,在所有事件中设置为 0 (零)。

id

针对每个事件生成的版本 4 UUID。您可以使用id在事件通过规则移到目标时跟踪事件。

detail-type

source 字段组合起来标识显示在 detail 字段中的字段和值。

由 CloudTrail 交付的事件具有AWS API Call via CloudTrail作为detail-type

source

标识生成事件的服务。来自所有事件Amazon服务以 “aws” 开头。客户生成的事件可具有任意值,前提是它不以“aws.”开头。建议使用 Java 包名样式反向域名字符串。

要查找正确的值,请执行source用于Amazon服务,请参阅Amazon 资源名称 (ARN)。例如,sourceAmazon CloudFront 的值是aws.cloudfront

账户

标识Amazonaccount.

time

事件时间戳,可由发起事件的服务指定。如果事件跨时间间间隔,则服务可以报告开始时间,因此该值可能早于接收事件的时间。

region

标识Amazon事件源自的区域。

resources

一个 JSON 数组,它包含用于标识事件中涉及的资源的 ARN。生成事件的服务决定是否包含这些 ARN。例如,Amazon EC2 实例状态更改包含 Amazon EC2 实例 ARN,Auto Scaling 事件包含实例和自动扩展组的 ARN,而对 API 调用Amazon CloudTrail不包括资源 ARN。

detail

包含事件信息的 JSON 对象。生成事件的服务将确定此字段的内容。详细内容可以像两个字段一样简单。AmazonAPI 调用事件具有约 50 个字段,其中嵌套多个级别。

Amazon EventBridge 中的以下事件表示正在终止一个 Amazon EC2 实例。

{ "version": "0", "id": "6a7e8feb-b491-4cf7-a9f1-bf3703467718", "detail-type": "EC2 Instance State-change Notification", "source": "aws.ec2", "account": "111122223333", "time": "2017-12-22T18:43:48Z", "region": "us-west-1", "resources": [ "arn:aws:ec2:us-west-1:123456789012:instance/i-1234567890abcdef0" ], "detail": { "instance-id": " i-1234567890abcdef0", "state": "terminated" } }