首页 > 解决方案 > 时间错配涌入 / Grafana

问题描述

当我在 Influx Web 前端探索我的数据时,所有数据点都以 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")

标签: grafanainfluxdb

解决方案


合计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,因为它会根据选定的仪表板时间范围自动生成聚合周期。例如,如果您选择去年的数据,那么静态 10 秒聚合对于您的服务器和浏览器来说将是多余的。见文档


推荐阅读