使用 EventBridge 沙盒测试目标输入变压器 - Amazon EventBridge

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

使用 EventBridge 沙盒测试目标输入变压器

在将信息 EventBridge传递给规则目标之前,您可以使用输入转换器自定义事件中的文本。

创建新规则或编辑现有规则时,配置输入转换器通常是指定目标这一大型过程中的一环。但是 EventBridge,使用中的沙盒,您可以快速配置输入变压器并使用示例事件来确认您获得了所需的输出,而无需创建或编辑规则。

有关输入转换的更多信息,请参阅 亚马逊 EventBridge 输入转换

测试目标输入转换器
  1. 打开 Amazon EventBridge 控制台,网址为https://console.aws.amazon.com/events/

  2. 开发人员资源下,选择沙盒,然后在沙盒页面上选择目标输入转换器选项卡。

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

    AWS events

    从支持的 AWS 服务发出的事件中进行选择。

    1. 选择 AWS 事件

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

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

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

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

    Partner events

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

    1. 选择EventBridge 合作伙伴活动

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

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

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

    Enter your own

    用JSON文字输入您自己的活动。

    1. 选择输入您自己的

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

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

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

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

      • Prettify — 通过添加换行符、制表符和空格,使JSON文本更易于阅读。

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

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

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

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

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

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

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

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

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

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

  6. 在 “模板” 部分中,撰写要用于确定 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" }

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

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

    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" }

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