我需要每天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)