通过正则表达式从CloudWatch发送消息到SNS?

时间:2018-10-05 15:02:55

标签: amazon-web-services amazon-sns amazon-cloudwatch

是否可以使用“监听”或监视特定类型的日志消息的过滤器/监视器来配置AWS CloudWatch(理想情况下,可以使用细粒度或类似正则表达式的控件来告诉CloudWatch查找特定的模式),以便将日志消息转发到特定的SNS端点?

含义:

  1. 我的应用程序将日志消息发布到CloudWatch
  2. CloudWatch配置有此过滤器/监视器,以侦听与特定正则表达式/模式匹配的日志消息
  3. 任何与此模式匹配的邮件都将转发到我选择的SNS端点

我能找到的最好的是this article,它显示了CloudWatch如何通过SNS发送电子邮件,但是不确定是否可以将其使用的警报配置为监视消息模式,并且不确定是否可以配置SNS进行与SES /电子邮件无关的下游工作。

1 个答案:

答案 0 :(得分:1)

CloudWatch日志可以具有订阅。当前可以为Kinesis流或Lambda函数设置目标,但是您可以定义订阅过滤器,以将匹配的消息发送到Lambda函数,如果需要,可以将它们放入SNS主题。

例如:

aws logs put-subscription-filter --log-group-name /aws/ecs/mycontainer --destination-arn arn:aws:lambda:us-east-1:123456:function:my-log-watch-sns-feeder --filter-name container-errors --filter-pattern "ERROR"

这将设置一个订阅过滤器,该过滤器将从名为 mycontainer 的ECS容器向名为 my-log-的lambda函数发送日志消息,该容器包含字符串 ERROR 。 watch-sns-feeder

有关更多信息: