Допустим, у меня есть различные клиенты MQTT, которые отправляют данные в пределах некоторой топи c, например, для датчиков температуры tele / temp /% devicename% / SENSOR в формате JSON, таком как
{"Time":"2020-03-24T20:17:04","DS18S20":{"Temperature":22.8},"TempUnit":"C"}}
Мой базовый c telegraf.conf выглядит следующим образом
# Influxdb Output
[[outputs.influxdb]]
database = "telegraf"
# sensors
[[inputs.mqtt_consumer]]
name_override = "sensor"
topics = ["tele/temp/+/SENSOR"]
data_format = "json"
Моя проблема в том, что теперь я не могу выполнить базовые c операции с этими json данными.
- Я не хочу сохранять хост и топи c. Как я могу сбросить поля?
- Топи c содержит% devicename%. Как я могу добавить его в качестве тега?
- Я не могу использовать json_query, поскольку там есть% devicename% и есть только одно поле.
- Как я могу переименовать поле% devicename% _ "температура"?
В общем, я хотел бы иметь простой способ сохранить только измерение множества датчиков в следующем формате
timestamp | temperature | device
2020-03-24T20:17:04 | 22.8 | DS18S20
Большое спасибо !