如何为自定义 cloudwatch 指标使用多个单独的维度?

Posted

技术标签:

【中文标题】如何为自定义 cloudwatch 指标使用多个单独的维度?【英文标题】:How to use multiple separate dimensions for custom cloudwatch metrics? 【发布时间】:2019-10-21 09:36:31 【问题描述】:

有了这个,我们可以为我们的自定义指标配置维度。


   "metrics":
      "append_dimensions":
         "AutoScalingGroupName":"$!aws:AutoScalingGroupName",
         "ImageId":"$!aws:ImageId",
         "InstanceId":"$!aws:InstanceId",
         "InstanceType":"$!aws:InstanceType"
      ,
      "metrics_collected":
         "mem":
            "measurement":[
               "mem_used_percent"
            ]
         ,
         "swap":
            "measurement":[
               "swap_used_percent"
            ]
         
      
   

这给出了类似的东西:

现在我尝试为维度自动缩放组创建警报:

  MemoryAlarmHigh:
   Type: AWS::CloudWatch::Alarm
   Properties:
     EvaluationPeriods: '1'
     Statistic: Average
     Threshold: '70'
     AlarmDescription: Go in Alarm is memory is higher than 70% for 60 seconds
     Period: '60'
     AlarmActions:
     - Ref: ScaleUpPolicy
     Namespace: CWAgent
     Dimensions:
     - Name: AutoScalingGroupName
       Value: !Ref ASG
     ComparisonOperator: GreaterThanThreshold
     MetricName: xxx

这不起作用。我得到的数据不足。 现在当我使用

            
              "metrics": 
                "append_dimensions": 
                  "AutoScalingGroupName": "$!aws:AutoScalingGroupName"
                ,
                "metrics_collected": 
                  "mem": 
                    "measurement": [
                      "mem_used_percent"
                    ]
                  
                
              
            

我得到:

警报现在起作用了。但我想使用多个维度,但分别使用它们(如在 EC2 命名空间中),以便我可以使用我的警报。

我该怎么做?

【问题讨论】:

【参考方案1】:

尝试设置aggregation_dimensions

像这样:


   "metrics":
      "append_dimensions":
         "AutoScalingGroupName":"$!aws:AutoScalingGroupName",
         "ImageId":"$!aws:ImageId",
         "InstanceId":"$!aws:InstanceId",
         "InstanceType":"$!aws:InstanceType"
      ,
      "aggregation_dimensions" : [["AutoScalingGroupName"]],
      "metrics_collected":
         "mem":
            "measurement":[
               "mem_used_percent"
            ]
         ,
         "swap":
            "measurement":[
               "swap_used_percent"
            ]
         
      
   

https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-Configuration-File-Details.html#CloudWatch-Agent-Configuration-File-Metricssection

【讨论】:

以上是关于如何为自定义 cloudwatch 指标使用多个单独的维度?的主要内容,如果未能解决你的问题,请参考以下文章

如何让 CodeDeploy Blue/Green 为自定义指标创建 CloudWatch 警报?

AWS cloudwatch 自定义指标作为弹性 beantalk 自动缩放触发器

AWS Cloudwatch get-metric-statistics 命令返回的是指标名称,而不是自定义 cloudwatch 指标的值

我可以在 Cloudwatch 仪表板的同一轴上为一个指标绘制多个统计数据吗?

CloudWatch 自定义 EC2 内存指标和带有 AutoScaling 策略的警报

如何为具有与内置单元格相同的布局指标的“UITableView”提供自定义“UITableCell”?