我正在尝试学习 InfluxDB 的 Flux 查询语言。我正在使用 InfluxDB OSS 2.7。
我有来自 iobroker 的用水量使用时间序列。它报告的升数不断增加,我想通过使用aggregateWindow 的自定义函数来显示我每月使用了多少升。这是我尝试过的:
import "timezone"
import "types"
option location = timezone.location(name: "Europe/Berlin")
from(bucket: "iobroker")
|> range(start: -1y, stop: today())
|> filter(fn: (r) => r["_measurement"] == "Water_Total" and r["_field"] == "value")
|> filter(fn: (r) => types.isNumeric(v: r._value))
|> difference()
|> aggregateWindow(every: 1mo, fn: sum, timeSrc: "_stop")
|> cumulativeSum(columns: ["_value"])
|> derivative(unit: 1d, nonNegative: true, columns: ["_value"], timeColumn: "_time")`
这将返回一个在特定日期(2023 年 7 月 26 日)停止的图表/表格 我怎样才能找到问题?
我试图找出数据中的问题,但找不到。 它停在这里,有这样的声明:
from(bucket: "iobroker")
|> range(start: -1y, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "Water_Total")
|> filter(fn: (r) => r["_field"] == "value")
|> aggregateWindow(every: 1d, fn: spread, createEmpty: false)
|> yield(name: "l")
使用
from(bucket: "iobroker")
|> range(start: -55d, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "Water_Total")
|> filter(fn: (r) => r["_field"] == "value")
|> aggregateWindow(every: 1d, fn: spread, createEmpty: false)
|> yield(name: "l")
我正在获取 2023 年 8 月 21 日之后的数据。
数据太多。 尝试范围(开始:-5d ...