我使用 Influx DB 来存储一些数据,变量上只有 TRUE 和 FALSE。这些数据正在 Grafana 上绘制成图表。我想实现一个计数器,只要 FALSE 变为 TRUE,该计数器就会增加。我是使用 Influx DB 和 Grafana 的初学者。下面是我仅用于绘制 TRUE 和 FALSE 值的代码:
from(bucket: "test")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "In_Outs")
|> filter(fn: (r) => r["_field"] == "variable_1")
如果您只在数据库中进行了更改,那么它总是
true
false
true
false
那么过滤器和计数就足够了
|> filter(fn: (r) => r._value == true)
|> count()
如果相同的状态被存储多次
true
true
false
false
false
true
你需要类似的东西
import "influxdata/influxdb/monitor"
...
|> map(fn: (r) => ({r with _level: string(v: r._value)}))
|> monitor.stateChanges(fromLevel: "false", toLevel: "true")
|> count()