如何从EventBridge发送事件到Lambda函数

4

我希望Lambda函数每10分钟被触发一次,并从EventBridge以JSON格式接收事件。事件将包含一个文档ID,该ID将在Lambda代码中使用。目前,EventBridge没有为规则类型Schedule发送自定义事件到目标的功能。这里的自定义事件是文档ID,我希望Lambda函数作为事件接收。如何实现这一点?


“EventBridge不允许为规则类型Schedule发送自定义事件”是什么意思?您认为什么是“自定义事件”?当您说希望Lambda函数接收事件时,您希望它接收哪个事件?请编辑您的问题以添加这些额外细节,而不是通过评论进行回答。 - John Rotenstein
@JohnRotenstein 谢谢您的建议。已经在问题中添加了详细信息。 - user18333852
您是在说您想每隔10分钟调用一次AWS Lambda函数,并且想要传递特定信息到Lambda函数接收的“事件”中吗?这些信息是静态的(即每次调用函数相同),还是每次都会更改(如果是,则数据从哪里获取)? - John Rotenstein
是的,我想每10分钟调用一次AWS Lambda函数,并在事件中传递静态信息,以便Lambda函数接收。 - user18333852
1个回答

11

看起来你的目标是:

  • 每隔n分钟触发AWS Lambda函数
  • 在事件中传递静态信息,以供Lambda函数接收

您可以在为定时事件配置目标时完成此操作:

  • 选择Lambda函数作为目标
  • 附加设置中选择“配置目标输入”和常量(JSON文本)

然后,该事件将通过event参数在Lambda函数中可用:

AWS EventBridge specify constant


你知道通过CloudFormation实现相同功能的模式吗?我可以通过AWS::Events::RuleScheduleExpression模式定期触发lambda,但不清楚如何包含常量JSON,如上所示。希望文档能够在这里提供帮助,但也许我漏掉了一些明显的东西。 - kuanb
我认为可以使用 AWS::Events::Rule Target 中的 Input 字段,该字段是从 AWS::Events::Rule 引用的。 - John Rotenstein
你知道如何使用yaml实现吗? - Pedro Henrique
@PedroHenrique 上述“规则目标”文档页面显示了一个引用“输入”的YAML示例。 - John Rotenstein

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接