过滤由 cloudwatch 警报发布的关于 SNS 主题的消息以接收电子邮件通知

Filter messages published by cloudwatch alarms on an SNS topic to receive email notifications

我们正在使用通过企业为不同项目共享的 SNS 主题,它必须是这样,但每个人都在 cloudwatch 警报中使用该 SNS 主题。我们收到所有我们不想要的警报的电子邮件通知,我们只想收到我们警报的通知。

解决方案可能是在订阅上添加过滤器,但来自 cloudwatch 警报的消息没有任何我们可以放置过滤器的消息属性。任何人都可以提出问题的解决方案,或者让我知道是否有办法添加我们可以过滤的自定义消息属性。

无法过滤来自 CloudWatch 的消息。我最近遇到了同样的问题。为了过滤 SNS 主题中的消息,它必须具有适当的消息属性。

你能做的是:

  • 创建 Lambda 函数(授予它向 SNS 主题发送消息的权限)
  • 指向您的 CloudWatch 警报以向 Lambda 函数发送警报
  • 在您的 Lambda 函数中编写解析器,该解析器将识别消息应该针对哪个项目
  • 从 Lambda 函数向 SNS 主题发布消息并添加可在 SNS 中用于过滤的消息属性