如何在 Grafana 中正确转换和显示来自 Influxdb 的严格递增值?
How can I correctly transform and display strictly increasing values from Influxdb in Grafana?
我在 Influxdb 中有一些时间序列是从 Linux /proc
文件系统 每 10 秒 收集的 - 例如 I/O 操作一个硬盘。
这些值根据定义严格递增,我想将它们转换为 I/O 操作 每秒 (iops) 并在 Grafana 中显示它们。
这是我迄今为止最接近的一次:
SELECT difference(last("value")) / 10 FROM "disk_write" [WHERE <stuff>] GROUP BY time(10s)
我找不到在 Grafana 中使用按时间间隔的变量组定义此查询的方法。
问题是,我无法将 SELECT
块中的 / 10
替换为 / $interval
(其中包含 10s
),这使得此查询非常慢如果我显示大量时间 window.
如何正确定义它?
您需要使用 DERIVATIVE()。
像这样:
SELECT DERIVATIVE("value") FROM "disk_write" [WHERE <stuff>] GROUP BY time(10s)
我在 Influxdb 中有一些时间序列是从 Linux /proc
文件系统 每 10 秒 收集的 - 例如 I/O 操作一个硬盘。
这些值根据定义严格递增,我想将它们转换为 I/O 操作 每秒 (iops) 并在 Grafana 中显示它们。
这是我迄今为止最接近的一次:
SELECT difference(last("value")) / 10 FROM "disk_write" [WHERE <stuff>] GROUP BY time(10s)
我找不到在 Grafana 中使用按时间间隔的变量组定义此查询的方法。
问题是,我无法将 SELECT
块中的 / 10
替换为 / $interval
(其中包含 10s
),这使得此查询非常慢如果我显示大量时间 window.
如何正确定义它?
您需要使用 DERIVATIVE()。
像这样:
SELECT DERIVATIVE("value") FROM "disk_write" [WHERE <stuff>] GROUP BY time(10s)