【问题标题】:Multi-series query in influxdbinfluxdb中的多系列查询
【发布时间】:2016-05-11 00:53:25
【问题描述】:

我对 influxdb 很陌生。我正在使用石墨编写器向它提交收集的指标

对于磁盘统计信息,我想做一个百分比转换,并在 grafana 仪表板上显示。

disk.used / (disk.used + disk.free)

我在摆弄类似的东西(这显然不起作用):

从 "server.test_server.disk.used" 中选择 first(disk.used / (disk.used + disk.free)) 作为使用 left join "server.test_server.disk.free" 作为 free where ....

我可以使用什么查询?是否可以使用 influxdb 进行此类转换?这对石墨来说太容易了:(

更新:使用 grafana 2.1 和 influxdb 0.9

【问题讨论】:

    标签: graphite influxdb grafana


    【解决方案1】:

    您的架构对于 InfluxDB 0.9 不是最佳的。您可以进行许多测量,每个测量只有几个系列,而不是每个测量包含多个子系列。

    InfluxDB 0.9 中没有 JOIN,但相同度量下的所有系列会自动合并,除非被标签过滤。请参阅https://docs.influxdata.com/influxdb/v0.9/query_language/data_exploration/https://docs.influxdata.com/influxdb/v0.9/concepts/08_vs_09/#joins 了解更多信息。

    为了充分利用 InfluxDB 0.9,您应该在标签中编码元数据“test_server”,并将指标编码为单独的字段。另见Obtaining a total of two series of data from InfluxDB in Grafana

    【讨论】:

      【解决方案2】:

      是的,这是可能的,但是您能描述一下您想要拥有的整个架构和结果数据吗?做一个:

      select * from "server.test_server.disk"
      

      并给我们输出。或者您是否将它放在名为 server.test_server.disk.freeserver.test_server.disk.used 的两个单独的表中?在这种情况下,首选方法是使用这种表server.test_server.disk,其中包含两个指标(“已使用”和“免费”)。然后你就可以做这样的事情了:

      select first(used / (used + free)) from "server.test_server.disk" 
      

      【讨论】:

        猜你喜欢
        • 2021-06-03
        • 2021-06-26
        • 2021-01-24
        • 2019-08-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-02-10
        • 2020-11-19
        相关资源
        最近更新 更多