Как правильно настроить Telegraf для записи в InfluxDB данных, поступающих из MQTT

У меня есть ESP8266, который отправляет данные MQTT (значения с плавающей запятой) моему брокеру MQTT (mosquitto). Я не могу получить телеграф для записи в базу данных InfluxDB. У кого-нибудь есть образец конфигурации для телеграфа? Используя скрипт python, я могу успешно преодолеть telegraf, но вместо этого я предпочитаю использовать поддерживаемое программное обеспечение, например telegraf.

Еще один момент: я также включил телеграф с конфигурацией по умолчанию, который записывает системную информацию в InfxDB, и он работает. Однако, используя графану для построения графика данных, всякий раз, когда я включаю «GROUP BY time ($ interval)» в запрос, никакие точки данных не возвращаются. Похоже, проблема в формате данных.


person Fabio Angeletti    schedule 27.04.2018    source источник


Ответы (1)


Строка, отправляемая в MQTT, должна быть отформатирована следующим образом, чтобы ее правильно проанализировал синтаксический анализатор телеграфа infxdb по умолчанию: seriesName,tag1=tagname1,tag2=tagname2 value1=123,value2=456

например, используя клиентские утилиты:

mosquitto_pub -t smartmeter -m "energy,location=basement value=5" напишет в тему smartmeter (на которую нужно подписаться в telegraf.conf). Затем он запишет в энергетический ряд, установит тег местоположения и запишет значение 5. Telegraf также запишет теги по умолчанию (тема и хост mqtt) в infxdb.

Что касается вашего второго вопроса: вы должны использовать $__interval как группу по условию.

person maurerle    schedule 06.02.2020