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

如何为CloudWatch Agent输出的指标附加EC2实例自定义标签

给CloudWatch Agent指标附加EC2自定义标签操作指南

先给你补个最基础的概念:CloudWatch里的维度(dimensions) 就是指标的附加分类字段,你现在配置里自动附加的InstanceId就是维度,你要加的Name这类EC2自定义标签,本质就是给所有上报的指标多追加一个维度字段。
注意:CloudWatch Agent默认不会自动拉取EC2自定义标签,需要按下面3步操作才能实现你要的效果。

操作步骤

  • 第一步:给EC2实例绑定的IAM角色加权限
    找到运行CloudWatch Agent的EC2实例绑定的IAM角色,给角色附加以下权限,允许Agent读取实例自身的标签信息:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ec2:DescribeTags",
            "Resource": "*"
        }
    ]
}

这个权限仅用于查询当前实例的标签,没有过度授权风险。

  • 第二步:修改CloudWatch Agent配置
    你现有的配置里append_dimensions只加了InstanceId,自定义EC2标签的引用格式是${aws:tag:你的标签键名},比如要附加Name标签,就把append_dimensions部分改成下面这样:
"append_dimensions": {
    "InstanceId": "${aws:InstanceId}",
    "Name": "${aws:tag:Name}"
    // 需要附加其他自定义标签就按同样格式追加即可,比如加环境标签就写 "Env": "${aws:tag:Env}"
},

注意:标签键的大小写必须和EC2控制台里设置的完全一致,比如标签键是Name就写Name,如果是小写name就对应写name,否则会拉取不到值。

  • 第三步:重启Agent加载新配置
    从你当前采集的指标(LogicalDisk、% Processor Utility)判断你用的是Windows实例,在管理员权限的PowerShell里执行以下命令重载配置即可:
& $env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -a fetch-config -m ec2 -s -c file:"$env:ProgramFiles\Amazon\AmazonCloudWatchAgent\config.json"

如果你用的是Linux实例,执行以下命令:

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json

效果验证

配置生效后等1分钟左右,你再看上报的指标数据,dimensions字段里就会带上你配置的自定义标签,和你预期的效果一致,样例如下:

{"metric_stream_name":"QuickPartial-607uQD","account_id":"***","region":"us-east-1","namespace":"Testing2","metric_name":"LogicalDisk Free Megabytes","dimensions":{"InstanceId":"i-***","Name":"Cloudwatch-testing","instance":"D:","objectname":"LogicalDisk"},"timestamp":1657211580000,"value":{"max":10196.0,"min":10196.0,"sum":10196.0,"count":1.0},"unit":"None"}

注意事项

  • 如果配置后标签没有出现,按顺序排查:IAM权限是否正确附加、标签键大小写是否匹配、Agent是否成功重载配置
  • CloudWatch单个指标最多支持10个维度,你当前默认上报的维度有InstanceId、instance、objectname共3个,最多还能加7个自定义标签,足够日常使用
  • 后续如果修改EC2实例的标签值,不需要重启Agent,Agent会自动定期拉取最新标签值生效

内容的提问来源于stack exchange,提问作者Pa3k.m

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 20:18:18