CloudWatch指标聚合问题:无法丢弃Procstat采集的基础指标
CloudWatch Agent配置问题:仅保留聚合后的Tanium进程CPU指标
问题根源
drop_original_metrics配置位置错误:该参数属于顶级metrics节点的全局配置,不能放在procstat的子配置块中,之前的配置导致丢弃原始指标的规则未生效。- 冗余的聚合维度:你配置的
["ProcstatGroup"]会生成跨所有实例的全局聚合指标,若不需要这类数据,会额外增加成本。 - 聚合函数格式不规范:旧版数组格式可能导致解析异常,无法正确绑定到指定指标。
修正后的配置
{ "agent": { "metrics_collection_interval": 10, "run_as_user": "cwagent" }, "metrics": { "append_dimensions": { "AutoScalingGroupName": "${aws:AutoScalingGroupName}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}" }, "aggregation_dimensions": [ ["InstanceId", "ProcstatGroup"] ], "drop_original_metrics": true, "metrics_collected": { "procstat": [ { "append_dimensions": { "ProcstatGroup": "Tanium" }, "pattern": "[Tt]anium", "measurement": ["cpu_usage"], "metrics_collection_interval": 10, "aggregation_statistic_functions": { "cpu_usage": ["Sum"] } } ] } } }
关键修改说明
- 全局启用
drop_original_metrics:将参数移至metrics根节点并设为true,直接丢弃单个Tanium进程的原始CPU指标,仅保留按InstanceId+ProcstatGroup聚合后的Sum值。 - 精简聚合维度:移除
["ProcstatGroup"],避免生成跨实例的全局聚合指标,聚焦单实例级别的数据需求。 - 规范聚合函数格式:改用键值对格式绑定
cpu_usage与Sum函数,确保聚合规则准确生效。
验证步骤
- 重启CloudWatch Agent:
- Linux:执行
sudo systemctl restart amazon-cloudwatch-agent - Windows:在服务管理器中重启
Amazon CloudWatch Agent服务
- Linux:执行
- 检查CloudWatch指标:进入CW控制台的
Metrics→CWAgent命名空间,确认仅存在维度为InstanceId和ProcstatGroup=Tanium的procstat_cpu_usage指标,无单个进程的原始指标。
内容的提问来源于stack exchange,提问作者KubaS
相关产品推荐
相关产品推荐

