时间不匹配 Influx / Grafana
Time mismatch Influx / Grafana
当我在 Influx 网络前端浏览我的数据时,所有数据点均以 10 秒的步长均匀分布。 (12:00:00, 12:00:10, 12:00:20, ...)
当我在 Grafana 面板中使用相同的查询时,时间略有变化 1-2 秒。 (12:00:01, 12:00:12, 12:00:21, ...)
如何强制 Grafana 面板保持 10 秒步长?
from(bucket: "my_bucket")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "docker_container_cpu")
|> filter(fn: (r) => r["_field"] == "usage_percent")
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> yield(name: "mean")
总计 10s
:
from(bucket: "my_bucket")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "docker_container_cpu")
|> filter(fn: (r) => r["_field"] == "usage_percent")
|> aggregateWindow(every: 10s, fn: mean, createEmpty: false)
|> yield(name: "mean")
但是使用宏 v.windowPeriod
是个好主意,因为它会根据 selected 仪表板时间范围自动生成聚合周期。例如,如果您 select 去年的数据,静态 10 秒聚合对于您的服务器和浏览器来说是过大的杀伤力。参见 doc。
当我在 Influx 网络前端浏览我的数据时,所有数据点均以 10 秒的步长均匀分布。 (12:00:00, 12:00:10, 12:00:20, ...)
当我在 Grafana 面板中使用相同的查询时,时间略有变化 1-2 秒。 (12:00:01, 12:00:12, 12:00:21, ...)
如何强制 Grafana 面板保持 10 秒步长?
from(bucket: "my_bucket")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "docker_container_cpu")
|> filter(fn: (r) => r["_field"] == "usage_percent")
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> yield(name: "mean")
总计 10s
:
from(bucket: "my_bucket")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "docker_container_cpu")
|> filter(fn: (r) => r["_field"] == "usage_percent")
|> aggregateWindow(every: 10s, fn: mean, createEmpty: false)
|> yield(name: "mean")
但是使用宏 v.windowPeriod
是个好主意,因为它会根据 selected 仪表板时间范围自动生成聚合周期。例如,如果您 select 去年的数据,静态 10 秒聚合对于您的服务器和浏览器来说是过大的杀伤力。参见 doc。