You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过AWS CDK为指定Lambda函数创建有效CloudWatch指标仪表盘?

解决方案:通过维度指定Lambda函数关联的自定义指标

你的问题根源有两个:

  • 原代码里的Metric参数写错了(把metricName写成了metric)
  • 没有添加FunctionName维度过滤,CloudWatch找不到对应Lambda的指标

正确的CDK代码写法

直接在Metric构造器中通过dimensionsMap指定FunctionName维度,这和控制台手动选择函数的逻辑完全一致,而且没有时间范围限制:

import { Metric } from 'aws-cdk-lib/aws-cloudwatch';

// 针对你的自定义指标创建Metric实例
const lambdaCustomMetric = new Metric({
  namespace: 'xxx', // 你的指标命名空间
  metricName: 'yyy', // 注意:CDK中参数名是metricName,不是你原代码里的metric
  statistic: 'Sum',
  dimensionsMap: {
    FunctionName: 'zzz' // 关联到指定的Lambda函数
  },
  region: 'region' // 如果指标所在区域和CDK栈区域不同,必须指定
});

补充说明

  1. 关于专用类:如果是Lambda的默认内置指标(比如调用次数、执行时长),CDK的lambda.Function类提供了封装好的方法(比如myLambdaFunction.metricInvocations()),但你这是自定义上报的指标,所以必须用通用的Metric类加上维度过滤。
  2. 为什么MathExpression有时间限制:MathExpression依赖CloudWatch Insights查询,确实存在查询时间范围的限制,而直接指定维度的原生Metric查询没有这个限制,支持任意时间尺度的图表展示。

内容的提问来源于stack exchange,提问作者Csaba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 09:50:10