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

Grafana单面板双指标表格问题:CPU、内存平均值展示格式不符

解决Grafana表格面板展示服务器CPU/内存平均值的问题

我来帮你搞定这个Grafana表格展示的需求!要实现每个服务器一行、清晰显示Host、CPU_Avg、Mem_Avg的效果,咱们按以下步骤来操作:

1. 确保查询返回正确的结构化数据

首先得让你的数据源(比如Prometheus、InfluxDB)返回每个服务器对应一组CPU和内存平均值的结果,这里给你两个常见数据源的示例:

示例1:Prometheus数据源

如果用的是Node Exporter采集服务器指标,你可以用两个聚合查询,合并结果即可:

# CPU使用率平均值(按服务器分组)
avg by (instance) (irate(node_cpu_seconds_total{mode!="idle"}[5m])) * 100
# 内存使用率平均值(按服务器分组)
avg by (instance) (1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes)) * 100

注意:如果你的服务器标识标签不是instance,而是hostname或自定义标签,把avg by (instance)改成对应的标签名即可。

示例2:InfluxDB数据源

如果用InfluxDB,查询语句可以这样写:

SELECT mean("usage_idle") * 100 AS "CPU_Avg", mean("used_percent") AS "Mem_Avg" 
FROM "cpu"."usage_idle", "mem"."used_percent" 
WHERE $timeFilter 
GROUP BY "host"

不管用哪种数据源,核心是要让查询结果里每个服务器(Host)对应唯一一行,包含CPU和内存的平均值字段。

2. 配置表格面板的字段映射

这是你之前可能没做好的关键步骤:

  • 新建或打开你的表格面板,切换到「Fields」选项卡
  • 找到代表服务器名称的字段(比如Prometheus里的instance),点击字段名旁的编辑图标,把「Name」改成Host
  • 找到CPU平均值的字段,重命名为CPU_Avg,然后在「Format」里选择「Percent」或「Number」,设置合适的小数位数(比如1位)
  • 同样处理内存平均值的字段,重命名为Mem_Avg,调整对应的数据格式

3. 调整表格显示选项

切换到「Options」选项卡,做以下设置:

  • 确保「Show header」开启,表头会显示你设置的Host、CPU_Avg、Mem_Avg
  • 关闭「Group by」相关设置(如果有的话),避免服务器被分组显示
  • 可以把「Column width」设为「Auto」或手动调整宽度,让排版更美观

常见问题排查

  • 如果同一个服务器出现多行:检查查询是否返回了多个时间点的数据,确保用avg/mean这类聚合函数只保留每个服务器的一个平均值;或者在面板的「Query」选项卡,把「Format as」设置为Table而非Time series
  • 如果字段不匹配:确认查询返回的标签/字段名和你在「Fields」里映射的一致,比如不要把hostname当成instance来处理

这样配置完成后,你的表格面板就会完美显示成你想要的格式啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 06:51:57