You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在InfluxDB中按最大值降序取Top5 measurement并在Grafana展示热门URL

实现InfluxDB Top5访问量measurement查询及Grafana展示

方法一:直接用InfluxDB查询实现

针对InfluxDB 1.x(InfluxQL)

通过GROUP BY分组每个measurement,计算最大值后降序取前5:

SELECT max("value") AS "max_value" 
FROM /^\/.*$/ 
GROUP BY measurement 
ORDER BY "max_value" DESC 
LIMIT 5
  • GROUP BY measurement:将每个URL对应的measurement单独分组,计算各自的访问量最大值
  • ORDER BY "max_value" DESC:按访问量最大值降序排序
  • LIMIT 5:仅保留前5条结果

针对InfluxDB 2.x(Flux)

用Flux语法实现逻辑:

from(bucket: "你的bucket名称")
  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
  |> filter(fn: (r) => r._measurement =~ /^\/.*$/ and r._field == "value")
  |> max(column: "_value")
  |> sort(columns: ["_value"], desc: true)
  |> limit(n: 5)

方法二:借助Grafana转换功能实现

如果查询受版本限制无法直接实现,可通过Grafana转换处理:

  1. 先执行基础查询获取所有measurement的最大值:
    SELECT max("value") AS "max_value" FROM /^\/.*$/ GROUP BY measurement
    
  2. 进入Grafana面板的「转换」选项卡,添加排序转换:选择按max_value字段降序排列
  3. 再添加限制转换:设置显示前5条数据,即可得到Top5访问量的URL

内容的提问来源于stack exchange,提问作者Sreeman Repaka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 23:25:14