首页 > 解决方案 > 每个 Lambda 别名的 Cloudwatch 警报

问题描述

我们使用lambda 别名 作为无服务器应用程序的阶段,这些别名指向同一函数的不同版本

例子

Lambda:MyLambdaConsumer

别名 版本
产品 10
质量保证 11
开发者 $最新

这种方法非常适合我们的需求。

但是,我们面临为每个阶段创建警报的问题。我们注意到 Cloudwatch Log Streams按版本对流进行分组,我们无法限制每个别名(阶段)的警报。换句话说,当前的警报无法区分,这对我们的需求来说是不准确的

这是 Cloudwatch 组的日志流如何按lambda 版本流式传输

在此处输入图像描述

所以我的问题是是否有一种方法可以为每个ALIAS创建 CW 警报。

只是为了提供更多的上下文化,我的这个 lambda 是 SQS 队列的消费者。

标签: amazon-web-servicesaws-lambdaamazon-cloudwatchmetrics

解决方案


原来我应该按资源搜索指标

在此处输入图像描述

如我们所见,资源按别名分组

实际上,这个文件在这里准确地说明了它

按执行版本 (ExecutedVersion) – 查看别名和版本组合的指标。使用 ExecutedVersion 维度比较函数的两个版本的错误率,这两个版本都是加权别名的目标。

也许资源本身的标签让我感到困惑。似乎与别名无关

我使用 terraform 创建了警报,因此为了将其限制为某个别名,我只是在下面添加了维度,告知函数名称和资源(函数名称 + 别名)

dimensions = {
    Resource     = "corona-skill-dev-status:${var.environment}"
    FunctionName = "corona-skill-dev-status"
  }

推荐阅读