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

如何通过CloudFormation基于Lambda Duration指标创建CloudWatch告警

修复方案

核心问题根因

  1. 命名空间大小写不匹配:CloudWatch 命名空间是大小写敏感的,AWS Lambda 官方指标的标准命名空间为 AWS/Lambda(首字母大写),你模板中配置的小写 aws/lambda 无法匹配到官方生成的指标数据,这是告警无数据的核心原因。
  2. 阈值单位错误:Lambda Duration 指标的单位为毫秒,要实现运行超过 1 分钟触发告警的需求,阈值需要换算为 60000,你测试时设置的 Threshold: 0 逻辑上可触发告警,但未匹配到数据时自然无状态变化。
  3. 维度匹配问题:如果你的 Lambda 配置了版本或别名,手动创建的告警会自动携带 Resource 维度,你需要在 CloudFormation 模板中同步添加该维度才能匹配到对应指标。

修正后的模板代码

Resources:
  testAlarm:
    Type: AWS::CloudWatch::Alarm
    Properties:
      AlarmName: test-alarm
      AlarmDescription: "Lambda运行时长超过1分钟触发告警"
      ComparisonOperator: GreaterThanThreshold
      EvaluationPeriods: 1
      DatapointsToAlarm: 1
      MetricName: Duration
      Namespace: AWS/Lambda # 修正为官方标准大写命名空间
      Period: 60
      Statistic: Maximum
      Threshold: 60000 # 1分钟 = 60000毫秒
      Dimensions:
        - Name: FunctionName
          Value: 'hello world'
        # 若Lambda使用了版本/别名,请取消注释下面的配置,替换为实际的版本/别名值
        # - Name: Resource
        #   Value: 'hello world:your_version_or_alias'
      TreatMissingData: notBreaching

验证方式

部署修正后的模板后,打开 CloudWatch 对应告警的详情页,点击「查看指标」即可看到对应 Lambda 的 Duration 数据点即代表关联成功,后续触发规则即可正常触发告警。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 03:24:03