面板上每个图都是 No data,同样的 PromQL 贴到 Explore 里就能出曲线,右上角时间范围显示 Last 6 hours。日志里能对上时间点,这种反而好排。

面板查的是 UTC 区间而浏览器按东八区展示,或者数据源选到了另一个没数据的 Prometheus 实例,查询实际落在空档里。这一点先确认清楚,后面就不用反复试。

promtool query range http://127.0.0.1:9090 \
  'up' --start=1700000000 --end=1700003600 --step=60

围绕「Grafana 无数据」排查时,命令行跑一遍比在面板里点十次有用,面板会替你做掉不少隐式操作。偶发问题先统计频率,一小时几次和一天一次,查法完全不同。

改完顺手把文档补一句,省得下次自己重新推一遍。监控和日志的时间要对上,时区不一致会多绕很大一圈。

临时改动用注释写上日期和原因,过两周自己都记不清为什么这么写。

处理上按这个顺序:先在 Explore 用同一条查询确认数据源有数据;核对面板的时间范围 再看仪表盘的时区设置;检查下拉变量的当前值 空字符串会查出空集。

结果对不对很好判断,面板出现曲线,把时区切成 UTC 后横轴时间点仍能和日志对上。

作者 9823189