может ли Elastic переформатировать JSON при приеме внутрь? - PullRequest
0 голосов
/ 17 июня 2019

У меня есть устройство IoT, которое выводит данные в этом формате:

{
    "host": "edison",
    "timestamp": 1560755080091,
    "fahrenheit": 72.824,
    "humidity": 51.746
}

Я могу записать это в индекс Elastic (v 6.7.2), который я создал с помощью следующих сопоставлений:

PUT temperature-humidity
{
  "mappings": {
    "temperature_humidity": {
      "properties": {
        "host": {
          "type": "text",
          "fields": {
            "keyword": {
              "type": "keyword",
              "ignore_above": 256
            }
          }
        },
        "timestamp": {
          "type": "date",
          "format": "epoch_millis"
        },
        "fahrenheit": {
          "type": "float"
        },
        "humidity": {
          "type": "float"
        }
      }
    }
  }
}

У меня также есть экземпляр InfluxDB, который ожидает, что записи будут отформатированы следующим образом:

{
    "measurement": "temperature-humidity",
    "tags": {
        "host": "edison"
    },
    "fahrenheit": 72.824,
    "humidity": 51.746
}

Если возможно, я бы хотел избежать двух разных форматов данных.

Если я настроил устройство для вывода данных в формате InfluxDB, есть ли способ для Elastic преобразовать данные в «плоский» формат при поступлении записей?Или мне нужно сделать трансформацию вне Elastic?

...