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

如何将Grafana图例值映射为EC2实例名称

解决Grafana EC2图例从实例ID改为名称的方案

方案1:用Grafana Transform的Lookup功能(最适合你的场景)

既然你已经能通过变量获取实例名称,直接用Transform做关联就能批量替换图例:

  1. 确保变量是结构化的ID-名称映射
    • 若还未配置,新建一个Query类型的变量(比如命名为ec2_instance_map),数据源选AWS,查询类型选EC2 Instances
    • 在「Fields」中勾选InstanceId和Tags.Name(对应实例的Name标签),保存后变量会返回所有实例的ID与名称对应表
  2. 在CPU使用率面板添加Transform
    • 打开面板编辑,切换到「Transform」标签,点击「Add transform」,选择「Lookup」
    • 「Lookup dataset」选择你创建的ec2_instance_map变量
    • 「Match field」选当前面板CPU指标里的InstanceId(即当前图例显示的实例ID字段),「Lookup field」选变量里的InstanceId
    • 勾选「Keep all fields from main query」和「Keep matching fields from lookup」
  3. 修改图例显示字段
    • 切换到「Panel options」→「Legend」,在「Legend values」里选择Tags.Name(Lookup后的字段),或者直接在「Legend template」中写${Tags.Name}

方案2:给CloudWatch指标附加实例名称维度(长期自动化方案)

如果不想依赖Grafana的Transform,可以在AWS端给CPU指标添加实例名称维度:

  • 用CloudWatch Agent批量配置:给所有EC2实例安装CloudWatch Agent,修改配置文件,在采集CPU指标时添加InstanceName维度(值为实例的Name标签)
  • 或者用Lambda自动化:通过CloudWatch Event定期触发Lambda,获取所有EC2实例的ID和名称,调用CloudWatch API给对应指标添加自定义维度
  • 配置完成后,在Grafana查询CPU指标时,可直接选择InstanceName作为图例字段,无需额外关联

方案3:模板变量替换(适合实例变动少的场景)

如果实例数量固定、变动频率低,可以用键值对变量做替换:

  • 新建一个「Text box」类型的变量(比如instance_name_map),值填i-xxxxxx=WebServer01,i-yyyyyy=DBServer01,...(按格式填入所有实例ID和名称)
  • 在面板的「Legend template」里写${instance_name_map:${__data.fields.InstanceId}},Grafana会自动把实例ID替换为对应的名称
  • 缺点:实例变动时需要手动更新变量,不适合动态实例环境

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 10:52:23