AWS CloudWatch Explorer小部件自定义指标显示无可用数据的问询
我通过CloudWatch Agent为Auto Scaling Groups导出磁盘和内存指标,使用的用户数据如下:
yum update -y yum install -y amazon-cloudwatch-agent mkdir -p /opt/aws/amazon-cloudwatch-agent/etc echo '{ "agent": { "metrics_collection_interval": 60, "run_as_user": "root" }, "metrics": { "append_dimensions": { "AutoScalingGroupName": "${aws:AutoScalingGroupName}", "InstanceId": "${aws:InstanceId}", }, "metrics_collected": { "mem": { "measurement": [ "mem_used_percent" ], "metrics_collection_interval": 60 }, "disk": { "measurement": [ "disk_used_percent" ], "resources": [ "/" ], "metrics_collection_interval": 60 } } } }' > /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl \ -a fetch-config \ -m ec2 \ -c file:/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json \ -s
这些指标已存在于CloudWatch的CWAgent命名空间中,且可通过浏览面板可视化展示,但添加空Explorer小部件展示自定义指标时,界面显示“No Data Available”。请问是否还需其他配置?
针对CloudWatch Explorer小部件无法显示指标的问题,可从以下方向排查调整:
匹配维度配置
Explorer依赖维度分组展示数据,需确保小部件配置中选择的维度(如AutoScalingGroupName、InstanceId)与Agent配置里append_dimensions的维度完全一致,维度缺失或不匹配会导致无数据显示。核对命名空间与指标名
在Explorer配置中,确认选择的命名空间为CWAgent,指标名准确选择mem_used_percent或disk_used_percent,注意指标名区分大小写,避免拼写错误。验证Agent指标上报状态
查看CloudWatch Agent日志(路径通常为/var/log/amazon/amazon-cloudwatch-agent/amazon-cloudwatch-agent.log),确认指标正常上报:grep -E "mem_used_percent|disk_used_percent" /var/log/amazon/amazon-cloudwatch-agent/amazon-cloudwatch-agent.log若日志中有成功上报记录,说明Agent端配置无问题,问题集中在Explorer设置上。
调整时间范围
Explorer默认时间范围可能较短(如最近1小时),若Agent刚启动不久,指标未在该时间段积累足够数据,会显示无数据。尝试扩大时间范围(如最近3小时)后再查看。确认IAM权限
虽然能在浏览面板查看指标,但需确保当前用户拥有cloudwatch:GetMetricData和cloudwatch:ListMetrics权限,缺失权限可能导致Explorer无法拉取数据。
内容的提问来源于stack exchange,提问作者Mr 123

