Телеграфировать json_string_fields для массивов строк

#json #influxdb #telegraf

#json #influxdb #телеграф

Вопрос:

У меня запущен стек influxdb, telegraf и Chronograf, и он показывает данные, поступающие от брокера MQTT. Данные поступают в формате JSON и выглядят примерно так:

 {
    "msgid": "id1",
    "senderid": "id2",
    "measures": [
        {
            "type": "O",
            "value": "value1"
        },
        {
            "type": "CO2",
            "value": "value2"
        }
    ]
}
  

Чтобы иметь возможность анализировать различные значения, мне нужен telegraf для загрузки строк типа и значения. Я определил json_string_fields следующим образом:

 json_string_fields = ["msgid","senderid","measures_0_type","measures_1_type","measures_0_value","measures_1_value"]
  

Таким образом, я могу выполнять запросы к данным, но это ограничено первыми двумя показателями. Есть ли какой-нибудь способ определить все вхождения массива? Какой-то подстановочный знак?

Комментарии:

1. Я собираюсь сделать то же самое, вы нашли решение? @jordi

2. Нет. Мне пришлось вручную определить параметры, которые ожидались. Извините

3. Спасибо за ваше время @jordi Я выяснил, как указывать подстановочные знаки в json_string_fields ищите ответ

Ответ №1:

Чтобы использовать подстановочные знаки для json_string_fields, вы можете сделать, например:

 json_string_fields = ["msgid","senderid","measures_?_type","measures_?_value"]
  

Итак, если они изменяются от 0 до 1000, вы получите их все!