在创建规则的过程中配置输入转换器 - Amazon EventBridge
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

在创建规则的过程中配置输入转换器

作为创建规则的一部分,您可以指定一个输入转换器,用于 EventBridge 在将匹配事件发送到指定目标之前处理这些事件。您可以为 Amazon 服务或 API 目标的目标配置输入转换器。

创建目标输入转换器,作为规则的一部分
  1. 创建对事件作出反应的 Amazon EventBridge 规则中的步骤操作,创建一条规则。

  2. 步骤 3 - 选择目标中,展开其他设置

  3. 对于配置目标输入,在下拉列表中选择输入转换器

    单击配置输入转换器

    EventBridge 显示配置输入变压器对话框。

  4. 示例事件部分,选择要测试事件模式的示例事件类型。您可以选择 Amazon 活动、合作伙伴活动或输入自己的自定义活动。

    Amazon events

    从支持的 Amazon Web Services发出的事件中进行选择。

    1. 选择 Amazon 事件

    2. 示例事件下,选择所需 Amazon 的事件。活动按 Amazon 服务组织。

      当您选择一个事件时, EventBridge 会填充示例事件。

      例如,如果您选择 S3 对象已创建,则 EventBridge 会显示示例 S3 对象已创建事件。

    3. (可选)您也可以选择复制,将示例事件复制到设备的剪贴板。

    Partner events

    从支持的 EventBridge第三方服务(例如 Salesforce)发出的事件中进行选择。

    1. 选择EventBridge 合作伙伴活动

    2. 示例事件下,选择所需合作伙伴事件。事件是按合作伙伴组织的。

      当您选择一个事件时, EventBridge 会填充示例事件。

    3. (可选)您也可以选择复制,将示例事件复制到设备的剪贴板。

    Enter your own

    以 JSON 文本输入您自己的事件。

    1. 选择输入您自己的

    2. EventBridge 使用必需事件属性的模板填充示例事件。

    3. 根据需要编辑示例事件并添加内容。示例事件必须是有效的 JSON。

    4. (可选)您还可以选择以下任何选项:

      • 复制 - 将示例事件复制到设备的剪贴板。

      • 修饰 - 添加换行符、制表符和空格,使 JSON 文本更易于阅读。

  5. (可选)展开示例输入路径、模板和输出部分,查看以下示例:

    • 如何使用 JSON 路径来定义表示事件数据的变量

    • 如何在输入转换器模板中使用这些变量

    • EventBridge 发送到目标的结果输出

    有关输入转换的更多详细示例,请参阅输入转换示例

  6. 目标输入转换器部分,定义要在输入模板中使用的任何变量。

    变量使用 JSON 路径引用原始事件源中的值。然后,您可以在输入模板中引用这些变量,以便在 EventBridge 传递到目标的转换事件中包含来自原始源事件的数据。您最多可以定义 100 个变量。输入转换器必须是有效的 JSON。

    例如,假设您选择了 Amazon 事件 S3 Object Created 作为此输入转换器的示例事件。然后,您可以定义以下变量,在模板中使用:

    { "requester": "$.detail.requester", "key": "$.detail.object.key", "bucket": "$.detail.bucket.name" }

    (可选)您也可以选择复制,将输入转换器复制到设备的剪贴板。

  7. 在 “模板” 部分中,撰写要用于确定 EventBridge 传递给目标的内容的模板。

    您可以使用 JSON 字符串、静态信息、您定义的变量以及保留变量。有关输入转换的更多详细示例,请参阅输入转换示例

    例如,假设您在前一个示例中定义了变量。然后,您可以撰写以下模板,引用这些变量,以及保留变量和静态信息。

    { "message": "<requester> has created the object \"<key>\" in the bucket \"<bucket>\"", "RuleName": <aws.events.rule-name>, "ruleArn" : <aws.events.rule-arn>, "Transformed": "Yes" }

    (可选)您也可以选择复制,将模板复制到设备的剪贴板。

  8. 要测试您的模板,请选择生成输出

    EventBridge 根据输入模板处理示例事件,并显示在 Output 下生成的转换后的输出。这些信息 EventBridge 将代替原始源事件传递给目标。

    上述示例输入模板生成的输出将如下所示:

    { "message": "123456789012 has created the object "example-key" in the bucket "example-bucket"", "RuleName": rule-name, "ruleArn" : arn:aws:events:us-east-1:123456789012:rule/rule-name, "Transformed": "Yes" }

    (可选)您也可以选择复制,将生成的输出复制到设备的剪贴板。

  9. 选择确认

  10. 创建对事件作出反应的 Amazon EventBridge 规则中的其余步骤操作,创建一条规则。