如何在 Flux 中将秒数转换为 HH:MM:SS?

问题描述 投票:0回答:0

我有以下 Flux 查询,提示以秒为单位的平均时差。我需要将它转换为

DD:HH:MM:SS
并在Grafana中显示。

bucket = "test_bucket"
timeRangeStart = -30d // Adjust this value to your desired time range
timeRangeStop = now()

from(bucket: bucket)
  |> range(start: timeRangeStart, stop: timeRangeStop)
  |> filter(fn: (r) => r._field == "created_at" or r._field == "changed_at" or r._field == "initial_status" or r._field == "changed_status")
  |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")
  |> filter(fn: (r) => r.initial_status == "Done" and r.changed_status == "Done" and r.changed_at != "")
  |> map(fn: (r) => {
      diff_seconds = float(v: int(v: r.changed_at) - int(v: r.created_at))
      return {_time: r._time, diff_seconds: diff_seconds}
    })
  |> group(columns: ["_start", "_stop"])
  |> mean(column: "diff_seconds")
  |> yield(name: "mean_duration")

到目前为止输出是这样的

8627.90909090909

influxdb flux influxdb-2 influxdb-python flux-influxdb
© www.soinside.com 2019 - 2024. All rights reserved.