Отсутствующие точки данных при записи из файла с использованием cURL в InfluxDB - PullRequest
1 голос
/ 29 мая 2020

Я пытался вставить данные в базу данных InfluxDB согласно этой документации, выполнив команду curl -i -XPOST 'http://localhost:8086/write?db=myDB' --data-binary @data.txt. Где data.txt - это файл, содержащий более 50 точек.

Вывод:

HTTP/1.1 100 Continue

HTTP/1.1 204 No Content
Content-Type: application/json
Request-Id: 93487c9c-a1a8-11ea-80bd-9829a645199e
X-Influxdb-Build: OSS
X-Influxdb-Version: 1.8.0
X-Request-Id: 93487c9c-a1a8-11ea-80bd-9829a645199e
Date: Fri, 29 May 2020 12:33:18 GMT

Мне удалось записать только 50 точек в myDB и я думал, что это из-за HTTP/1.1 100 Continue. После некоторого поиска в Google я нашел эту статью, и в соответствии с ней я изменил и выполнил указанную выше команду, например curl -H 'Expect:' -i -XPOST 'http://localhost:8086/write?db=myDB' --data-binary @data.txt

Вывод:

HTTP/1.1 204 No Content
Content-Type: application/json
Request-Id: 54b34ebd-a1bc-11ea-80ca-9829a645199e
X-Influxdb-Build: OSS
X-Influxdb-Version: 1.8.0
X-Request-Id: 54b34ebd-a1bc-11ea-80ca-9829a645199e
Date: Fri, 29 May 2020 14:54:43 GMT

Я успешно в состоянии обойти HTTP/1.1 100 Continue, но все же я пишу только 50 точек на myDB.

Я абсолютный NOOB для InfluxDB и cURL

1 Ответ

0 голосов
/ 30 мая 2020

Недавно разобрался в проблеме. Проблема с содержимым файла data.txt. Я пишу каждую точку данных без timestamp, и из-за этого все измерения были распределены с одинаковыми timestamp.

Например,

temperature,tag=computer node="cpu",value=38
temperature,tag=computer node="gpu",value=45
temperature,tag=computer node="ram",value=40

Если бы у меня были три выше измерения в файле data.txt без timestamp InfluxDB примет только окончательное значение (перезаписывает предыдущие значения, так как все имеют одинаковые timestamp).

Поскольку я НООБ в этом, я не знал всех свойств InfluxDB.

...