InfluxQL/Grafana: 每天获取最大值

InfluxQL/Grafana: Get maximum per day

我想获取每天时间序列的最大值,因此每天在时间 00:00:00 获取一个数据点。每天的最大值应在 00:00:00 到 23:59:59 的范围内计算。

到目前为止我得到了什么:

SELECT max("temperature") FROM "Temperature" WHERE $timeFilter GROUP BY time(1d)

(Grafana使用$timeFilter只显示选中的时间范围) 通过该查询,我在错误的时间获得了输出数据点。

编辑: 当我运行

> precision rfc3339
> SELECT max("temperature") FROM "Temperature" WHERE time > now() - 7d GROUP BY time(1d) fill(null)

name: Temperature
time                 max
----                 ---
2020-03-22T00:00:00Z 4.5
2020-03-23T00:00:00Z 9.687
2020-03-24T00:00:00Z 10.75
2020-03-25T00:00:00Z 8.5
2020-03-26T00:00:00Z 11.062
2020-03-27T00:00:00Z 10.25
...

在 CLI 中,时间戳似乎是正确的。

但在 Grafana 中,数据点每天放置在 02:00。

谢谢!

InfluxDB 的结果采用 UTC。但是 Grafana 默认将时间戳插入到您的浏览器时区(因此您的 browser/local 环境报告您的本地时区 UTC+2)。您可以在仪表板配置中更改此行为,例如,您可以在 UTC 中保留时间戳:

我想我自己找到了解决方案:

单击 GROUP BY 和 select tz() 旁边的“+”,然后输入所需的时区。