AWS EventBridge - 使用第一个目标的输出作为下一个目标的输入

AWS EventBridge - Use output of first target as input to the next

AWS EventBridge 中的一条规则允许我们提供最多 5 个目标。对于这些目标中的每一个,我们都有一些选项来选择输入——基于与规则匹配的事件。有没有办法将第一个目标(lambda 函数)的输出作为输入传递给下一个目标(另一个 lambda 函数)。

我知道我们可以通过在第一个 lambda 函数结束时触发 SNS 来做到这一点。但是,我正在寻找一种在 EventBridge 中执行此操作的方法。

感谢您的帮助

更简洁的方法是让 Eventbridge 将事件移交给 Step Functions 状态机,并在该状态机中有 5 个步骤。

步骤函数允许您在第二步中使用第一步的输出,依此类推。

有关步进函数的更多信息 here

更多关于带阶跃函数的 Lambda here

我同意@paritosh 的回答,Step-functions 对于工作流程更有意义,但如果您需要更轻量级的东西(并且不想再学一件事);您可以使用 set Eventbridge 作为 lambda 目的地。然后,Lambda 应通过 PutEvents api 调用 https://aws.amazon.com/blogs/compute/introducing-aws-lambda-destinations/

将事件发送回 Eventbridge

如果你想在触发 lambda 之前改变输入,你可以使用 InputTransformer https://docs.aws.amazon.com/eventbridge/latest/userguide/transform-input.html