如何传递从 SNS 发送的自定义 message/text 以在 Lambda 函数中使用

How to pass a custom message/text sent from SNS to use in a Lambda function

我创建了一个 Lambda 函数,用于将消息发布到松弛通道,并由 SNS 主题触发。我能否使用 SNS 订阅筛选策略将数据传递到我的 Lambda 函数,以便它可以在 Lambda 函数中读取和使用?我假设 Lambda 可以使用事件读取从 Lambda 中的 SNS 传递的参数?

event['message']

我只是不想为我要创建的每个触发器创建一个 Lambda 函数。我想要一个 Lambda 函数,从单独的 SNS 主题传入自定义文本,从而使该函数可重用。

我有一个 CodeDeploy 通过的 SNS 主题和一个失败的主题。我只想将消息 "CodeDeploy passed" 或 "CodeDepoy failed" 传递到 Lambda 函数中。

感谢任何帮助或建议!!

您应该使用 CloudWatch Events with Event Patterns 触发您的 Lambda 函数。通过这种方式,您可以指定 Lambda 函数将接收的事件(源事件的常量或部分)。

这里是 'SUCCESS' 与 CodeDeploy 的示例:

您可以使用同时匹配 'SUCCESS' 和 'FAILURE' 的单个规则以及 Lambda 函数中基于源事件或其中一部分的逻辑创建 Slack 消息来实现您想要的效果。