我正在跟踪无线网络的性能,并且需要对协议的优缺点进行协议。为此,我需要一个Grafana仪表板,其中将测量值(每2小时)与先前测量的平均值(移动或整个系列的平均值)进行比较。
我尝试了子查询等的许多不同组合,但都无法正常工作。我还尝试了内部联接(但是这些联接已删除?)。
这是最接近期望的结果,并且最接近“应该工作”:
SELECT last("sum") / moving_average("sum", 72) * 100 FROM (
SELECT "metadata_gateways_0_rssi" + "metadata_gateways_0_snr" AS "sum"
FROM "ip6-test-7" WHERE $timeFilter
) GROUP BY "payload_fields_location", time($__interval)
fill(previous)
即使使用moving_average(mean("sum"), 72)
,这也不起作用,实际上使用"advanced syntax"对我来说根本不起作用。
有效,但实际上并不需要什么:
SELECT last("sum") / mean("sum") * 100 FROM (
SELECT "metadata_gateways_0_rssi" + "metadata_gateways_0_snr" AS "sum"
FROM "ip6-test-7" WHERE $timeFilter
) GROUP BY "payload_fields_location", time(1d)
fill(previous)
将$ __ interval作为2h会导致系列始终为100(显然)。