亚马逊 Pi EventBridge pes 的目标 - Amazon EventBridge
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

亚马逊 Pi EventBridge pes 的目标

您可以将管道中的数据发送到特定目标。在中设置管道时,可以配置以下目标 EventBridge:

目标参数

某些目标服务不向目标发送事件负载,而是将事件视为调用特定 API 的触发器。 EventBridge 使用来指定PipeTargetParameters向该 API 发送哪些信息。这些功能包括:

注意

EventBridge 不支持所有 JSON Path 语法并在运行时对其进行评估。支持的语法包括:

  • 点表示法(例如 $.detail

  • 短划线

  • 下划线

  • 字母数字字符

  • 数组索引

  • 通配符 (*)

动态路径参数

EventBridge 管道目标参数支持可选的动态 JSON 路径语法。您可以使用此语法指定 JSON 路径而不是静态值(例如 $.detail.state)。整个值必须是 JSON 路径,不能仅仅是其中的一部分。例如,RedshiftParameters.Sql 可以是 $.detail.state 但不能是 "SELECT * FROM $.detail.state"。这些路径在运行时会动态替换为来自指定路径的事件负载本身的数据。动态路径参数不能引用新值或输入转换生成的转换后的值。动态参数 JSON 路径支持的语法与转换输入时的语法相同。有关更多信息,请参阅 Amazon EventBridge Pipes 输入转换

动态语法可用于所有 Pip EventBridge es 丰富和目标参数的所有字符串、非枚举字段和目标参数,但以下除外:

例如,要将管道 Kinesis 目标设置为源事件中的自定义密钥,请设置。PartitionKey KinesisTargetParameter PartitionKey到:

  • "$.data.someKey",适用于 Kinesis 源

  • "$.body.someKey",适用于 Amazon SQS 源

然后,如果事件负载是有效的 JSON 字符串(例如){"someKey":"someValue"},则从 JSON 路径中 EventBridge 提取该值并将其用作目标参数。在此示例中, EventBridge 将 Kinesis 设置为 “s om eV PartitionKey alue”。

权限

要对您拥有的资源进行 API 调用,Pi EventBridge pes 需要适当的权限。 EventBridge Pipes 使用您在管道上指定的 IAM 角色进行扩充和使用 IAM 委托人进行目标调用pipes.amazonaws.com

调用目标

EventBridge 有以下方法可以调用目标:

  • 同步(调用类型设置为REQUEST_RESPONSE)— EventBridge 等待目标的响应后再继续。

  • 异步(调用类型设置为FIRE_AND_FORGET)— EventBridge 不等待响应后再继续。

默认情况下,对于具有排序源的管道,会同步 EventBridge 调用目标,因为在继续下一个事件之前需要来自目标的响应。

如果源不强制执行命令,例如标准的 Amazon SQS 队列,则 EventBridge 可以同步或异步调用支持的目标。

使用 Lambda 函数和 Step Functions 状态机,您可以配置调用类型。

注意

对于 Step Functions 状态机,必须异步调用标准工作流程