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

如何每日重置Grafana仪表盘数据?仅展示工作日7点后Prometheus数据

Prometheus+Grafana 当日工作时段数据展示解决方案

核心纠正:无需重置指标

Prometheus的计数器是单调递增设计,重启采集端重置指标会破坏数据完整性,完全没必要。你忽略的关键点是:应该通过PromQL查询计算时段增量,而非修改指标本身。

当日7点至今的指标查询方法

计数器类型指标(如请求数、错误数)

用increase()函数计算当日7点以来的增量,自动排除之前的累计值:

# 示例:计算your_job任务下,当日7点至今的HTTP请求增量
increase(http_requests_total{job="your_job"}[now/d+7h:])
  • now/d+7h:表示当日0点加7小时(即当日早7点)
  • [now/d+7h:]:限定时间范围为当日7点至当前时刻
  • increase():计算该时段内计数器的总增量,正好对应你需要的当日工作时段数据

Gauge类型指标(如内存、CPU使用率)

直接结合Grafana的时间范围设置(From now/d+7h To Now),Gauge会自动展示该时段内的实时数据,无需额外函数处理。如果需要精准过滤,可使用@运算符指定起始时间:

node_memory_MemAvailable_bytes{job="your_job"} @ now/d+7h

Stat面板限定特定时段数据

当日工作时段数据

  1. 确保面板时间范围与全局一致(From now/d+7h To Now)
  2. 计数器指标使用上述increase()查询,Stat面板会自动统计该时段的增量总和/最大值等(可在面板「Options」中选择统计类型)

过去1小时数据

有两种方式:

  1. 修改该面板的独立时间范围为From now-1h To Now
  2. 用PromQL直接指定1小时时间范围:
increase(http_requests_total{job="your_job"}[1h])

为什么之前设置无效?

你直接查询了原始计数器指标(如http_requests_total),时间范围过滤仅返回该时段内的计数器采样点,但采样点的值仍是从采集开始的累计值。必须用increase()/rate()这类增量函数,才能得到时段内的实际变化量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 13:45:34