【问题标题】:Create InfluxDB Continuous Query where the measurement name is based on tag values创建 InfluxDB 连续查询,其中测量名称基于标签值
【发布时间】:2018-08-18 06:45:38
【问题描述】:

我有一个名为 reading 的度量,其中所有行的格式为:

time                            channel  host       value
2018-03-05T05:38:41.952057914Z  "1"      "4176433"  3.46
2018-03-05T05:39:26.113880408Z  "0"      "5222355"  120.23
2018-03-05T05:39:30.013558256Z  "1"      "5222355"  5.66
2018-03-05T05:40:13.827140492Z  "0"      "4176433"  3.45
2018-03-05T05:40:17.868363704Z  "1"      "4176433"  3.42

其中channelhost 是标签。

有没有一种方法可以自动生成连续查询:

  • CQ 测量名称的格式为host_channel

到目前为止,我一直在逐个进行,例如

CREATE CONTINUOUS QUERY 4176433_1 ON database_name 
BEGIN 
    SELECT mean(value) INTO 4176433_1 
    FROM reading 
    WHERE host = '4176433' AND channel = '1' 
    GROUP BY time(1m)
END

但是有没有一种方法可以在每次将新主机添加到数据库时自动为每个主机和通道获取 1m 采样?谢谢!

【问题讨论】:

    标签: influxdb


    【解决方案1】:

    由于多种原因,在 InfluxDB 中无法做到这一点。在测量名称中编码标签值与 InfluxDB 官方最佳实践和being discouraged 相矛盾。

    我建议你直接去:

    CREATE CONTINUOUS QUERY reading_aggregator ON database_name 
    BEGIN 
        SELECT mean(value), host + '_' + channel AS host_channel
        INTO mean_reading
        FROM reading 
        GROUP BY time(1m), host, channel
    END
    

    【讨论】:

      猜你喜欢
      • 2018-07-12
      • 1970-01-01
      • 2019-03-25
      • 2019-11-13
      • 2021-03-02
      • 1970-01-01
      • 1970-01-01
      • 2020-08-02
      • 1970-01-01
      相关资源
      最近更新 更多