【问题标题】:Why is my Flux query in Grafana not sorting by default?为什么我在 Grafana 中的 Flux 查询默认不排序?
【发布时间】:2021-01-03 21:00:27
【问题描述】:

Grafana 7.5.1 和 InfluxDB 1.8.2。我正在尝试创建一个表格,显示每个不同标签值的“单位”值的总和。我正在获取数据,但我需要默认情况下按降序对总和进行排序。这是我的 Flux 查询:

    from(bucket: "consumption") 
    |> range(start: -1y) 
    |> filter(fn: (r)  => r._measurement == "stuff" and r._field == "units" and r._value > 0) 
    |> group(columns: ["dc","tnt"]) 
    |> sum(column: "_value")
    |> sort(columns: ["_value"], desc: true)
    |> map(fn: (r) => ({r with _value: r._value / 4.0}))
    |> yield()

我还有一个 Reduce 转换(计算 --> Total)和 Organize Fields 转换。

但是无论我在排序函数中做什么,它都不会改变表格中的任何内容。该表总是按标签值(“dc”、“tnt”)按字母顺序排序。我需要它按 _value 降序排序。我做错了什么?

谢谢!

【问题讨论】:

  • 仅供参考,我可以通过手动对可视化中的列降序排序然后像这样保存它来解决这个问题,但我仍然不明白为什么排序功能没有任何效果。
  • 我遇到了同样的问题。它与 group() 函数有关,因为它为每个“dc”、“tnt”组合生成一个表。并且排序适用于每个表。我正在拼命寻找将所有内容合并到一个表中的功能。

标签: grafana influxdb fluxlang


【解决方案1】:

此视频解释了您所看到的:

https://www.youtube.com/watch?v=9B4ioIlNGMk

基本上,您需要在排序之前添加一个空的|> group() 以将所有这些表合并为一个。

【讨论】:

    猜你喜欢
    • 2020-12-08
    • 2021-11-14
    • 2019-12-18
    • 2019-10-15
    • 1970-01-01
    • 1970-01-01
    • 2020-10-27
    相关资源
    最近更新 更多