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

Grafana OSS 9.1.8:带阈值过滤查询时Y轴起始值异常(非零)

解决Grafana OSS 9.1.8中带标量过滤的PromQL查询Y轴起始值异常问题

问题现象

  • 在Grafana OSS 9.1.8中,使用标量值过滤实例向量(即给PromQL查询添加阈值过滤条件,比如筛选CPU使用率超标的实例)时,图表Y轴会从随机非零值起始
  • 示例查询:(container_cpu_usage_seconds_total{...}/kube_pod_container_resource_requests{...}) > ${CPU_THRESHOLD}
  • 即便在图表设置里配置了soft min和soft max,Y轴起始值仍显示异常;但移除查询中的阈值过滤条件后,Y轴显示恢复正常

原因分析

这是Grafana 9.1.x版本存在的已知渲染逻辑bug:当PromQL返回经过标量过滤后的向量时,Grafana的Y轴计算逻辑会错误跳过配置的soft min参数,转而以过滤后数据的最小值作为起始基准。而过滤后的数据最小值本身就高于设定的阈值,因此Y轴会从该值附近开始,呈现出“随机非零”的异常表现。

解决方案

方案1:用clamp_min函数替代直接过滤

修改查询逻辑,保留所有实例但将低于阈值的值设为0,既满足关注高使用率实例的需求,又能让Y轴正确识别0作为起始基准:

clamp_min((container_cpu_usage_seconds_total{...}/kube_pod_container_resource_requests{...}), ${CPU_THRESHOLD})

如果需要完全隐藏低于阈值的实例,可配合图表的「隐藏零值系列」功能,效果比直接过滤更稳定。

方案2:硬限制Y轴起始值为0

放弃使用soft min,直接将Y轴的min参数设置为0(硬限制),强制Y轴从0开始。此方法操作简单,但如果过滤后的数据均远高于0,可能会压缩图表可视化空间,影响数据细节查看。

方案3:升级Grafana版本

该Y轴计算逻辑bug在Grafana 9.2及以上版本已被修复,升级至较新的稳定版本(如9.2.x或更高)可彻底解决此问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 19:45:59