使用 EventBridge 沙盒测试目标输入转换器
在 EventBridge 将信息传递给规则的目标之前,您可以使用输入转换器自定义事件的文本。
在创建新规则或编辑现有规则时,配置输入转换器通常是指定目标这一大型过程中的一环。但是,使用 EventBridge 中的沙盒,您可以快速配置输入转换器,并使用示例事件来确认您可以获得所需的输出,而无需创建或编辑规则。
有关输入转换的更多信息,请参阅 Amazon EventBridge 输入转换。
测试目标输入转换器
访问 https://console.aws.amazon.com/events/
,打开 Amazon EventBridge 控制台。 -
在开发人员资源下,选择沙盒,然后在沙盒页面上选择目标输入转换器选项卡。
-
在示例事件部分,选择要测试事件模式的示例事件类型。您可以选择 AWS 事件、合作伙伴事件,或输入自己的自定义事件。
(可选)展开示例输入路径、模板和输出部分,查看以下示例:
如何使用 JSON 路径来定义表示事件数据的变量
如何在输入转换器模板中使用这些变量
EventBridge 向目标发送的输出结果
有关输入转换的更多详细示例,请参阅输入转换示例。
-
在目标输入转换器部分,定义要在输入模板中使用的任何变量。
变量使用 JSON 路径引用原始事件源中的值。然后,您可以在输入模板中引用这些变量,以便在 EventBridge 传递给目标的转换后事件中包含来自原始源事件的数据。您最多可以定义 100 个变量。输入转换器必须是有效的 JSON。
例如,假设您选择了 AWS 事件 已创建 S3 对象,作为此输入转换器的示例事件。然后,您可以定义以下变量,在模板中使用:
{ "requester": "$.detail.requester", "key": "$.detail.object.key", "bucket": "$.detail.bucket.name" }(可选)您也可以选择复制,将输入转换器复制到设备的剪贴板。
在模板部分撰写模板,用于确定 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" }(可选)您也可以选择复制,将模板复制到设备的剪贴板。
-
要测试您的模板,请选择生成输出。
EventBridge 根据输入模板处理示例事件,并在输出下显示生成的转换后输出。这是 EventBridge 将传递给目标的信息,它会替换原始源事件。
上述示例输入模板生成的输出将如下所示:
{ "message": "123456789012 has created the object "example-key" in the bucket "amzn-s3-demo-bucket"", "RuleName": rule-name, "ruleArn" : arn:aws:events:us-east-1:123456789012:rule/rule-name, "Transformed": "Yes" }(可选)您也可以选择复制,将生成的输出复制到设备的剪贴板。