Grafana查询,生成每天同一时间的累计总和



我需要每天05:00开始呈现Grafana时间序列图。时间序列图需要显示2个质量流量计的累计和,直到第二天05:00,此时重置为零,然后重新开始求和。

到目前为止,我所得到的是计算出的累积和,但已手动将范围设置为05:00。

from(bucket: "ShortTerm")
|> range(start: 2021-09-17T05:05:00Z)
|> filter(fn: (r) => r["_measurement"] == "pulp_mflow1" or r["_measurement"] == 
"pulp_mflow2")
|> aggregateWindow(every: 1m, fn: mean, createEmpty: false)
|> cumulativeSum()
|> yield(name: "mean")

有什么建议吗?

首先想到的是hourSelection,但它似乎无法处理午夜翻转。因此,由于缺乏更好的方法,这可能有效:

import "date"
import "experimental"
hour = date.hour(t: now())
d0 = date.truncate(t: now(), unit: 1d)
t0 = if hour >= 5 then experimental.addDuration(d: 5h, to: d0) else experimental.subDuration(d: 19h, from: d0)
from(bucket: "ShortTerm")
|> range(start: t0)

最新更新