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

如何在Grafana面板中绑定服务器名称变量与对应ID索引?

解决Grafana面板ID与服务器名称变量绑定的方法

以下是几种可行的实现方式,可根据你的数据源和使用习惯选择:

1. 配置server_location变量为键值对

  • 进入仪表盘变量编辑界面,找到server_location变量
  • 将变量类型设置为自定义(Custom)
  • 在选项列表中添加键值对,键对应ID,值对应服务器名称:
    • 键:0001,值:London
    • 键:0777,值:Paris
    • 按需求添加其他ID与名称的映射
  • 将变量的「显示值」设置为值(Value),这样选择变量时显示名称,实际查询时传递对应的ID

2. 在查询中直接替换标签值

如果使用Prometheus类数据源,可通过label_replace函数在查询层完成映射:

label_replace(channel_sign_gauge, "server_name", "$server_location", "id", "(.*)")

若需要固定映射(不依赖变量过滤),也可以用多轮替换:

channel_sign_gauge
| label_replace(id, "server_name", "London", "id", "0001")
| label_replace(id, "server_name", "Paris", "id", "0777")

注:不同数据源的替换函数语法有差异,比如InfluxDB使用replace()函数,需对应调整

3. 利用面板可视化层的值映射

  • 打开面板编辑界面,切换到「可视化选项」标签页
  • 找到「值映射(Value mappings)」选项,点击「添加映射」
  • 选择「值到文本(Value to text)」类型,依次添加映射规则:
    • 值:0001 → 映射文本:London
    • 值:0777 → 映射文本:Paris
    • 其他ID按对应名称添加
  • 这种方式无需修改查询,仅在面板显示层替换ID为名称

注意事项

  • 若server_location是用于筛选服务器的变量,优先用键值对配置,确保筛选逻辑与显示名称一致
  • 全局级的ID映射可在Prometheus的relabel_configs中配置,但灵活性不如面板/变量级设置

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 11:44:59