Skip to content

Commit d6ba893

Browse files
authored
docs: Clarify how to use a client with InfluxDB 1.8 (#84)
1 parent 953686c commit d6ba893

File tree

3 files changed

+57
-7
lines changed

3 files changed

+57
-7
lines changed

CHANGELOG.md

+8-7
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,17 @@
22

33
### Documentation
44
1. [#75](https://github.com/influxdata/influxdb-client-python/issues/75): Updated docs to clarify how to use an org parameter
5+
1. [#84](https://github.com/influxdata/influxdb-client-python/pull/84): Clarify how to use a client with InfluxDB 1.8
56

6-
### Bugs
7+
### Bug Fixes
78
1. [#72](https://github.com/influxdata/influxdb-client-python/issues/72): Optimize serializing data into Pandas DataFrame
89

910
## 1.5.0 [2020-03-13]
1011

1112
### Features
1213
1. [#59](https://github.com/influxdata/influxdb-client-python/issues/59): Set User-Agent to influxdb-client-python/VERSION for all requests
1314

14-
### Bugs
15+
### Bug Fixes
1516
1. [#61](https://github.com/influxdata/influxdb-client-python/issues/61): Correctly parse CSV where multiple results include multiple tables
1617
1. [#66](https://github.com/influxdata/influxdb-client-python/issues/66): Correctly close connection pool manager at exit
1718
1. [#69](https://github.com/influxdata/influxdb-client-python/issues/69): `InfluxDBClient` and `WriteApi` could serialized by [pickle](https://docs.python.org/3/library/pickle.html#object.__getstate__) (python3.7 or higher)
@@ -24,7 +25,7 @@
2425
### CI
2526
1. [#54](https://github.com/influxdata/influxdb-client-python/pull/54): Add Python 3.7 and 3.8 to CI builds
2627

27-
### Bugs
28+
### Bug Fixes
2829
1. [#56](https://github.com/influxdata/influxdb-client-python/pull/56): Fix default tags for write batching, added new test
2930
1. [#58](https://github.com/influxdata/influxdb-client-python/pull/58): Source distribution also contains: requirements.txt, extra-requirements.txt and test-requirements.txt
3031

@@ -39,7 +40,7 @@
3940
### CI
4041
1. [#49](https://github.com/influxdata/influxdb-client-python/pull/49): Added beta release to continuous integration
4142

42-
### Bugs
43+
### Bug Fixes
4344
1. [#48](https://github.com/influxdata/influxdb-client-python/pull/48): InfluxDBClient default org is used by WriteAPI
4445

4546
## 1.2.0 [2019-12-06]
@@ -50,7 +51,7 @@
5051
### API
5152
1. [#42](https://github.com/influxdata/influxdb-client-python/pull/42): Updated swagger to latest version
5253

53-
### Bugs
54+
### Bug Fixes
5455
1. [#45](https://github.com/influxdata/influxdb-client-python/pull/45): Pandas is a optional dependency and has to installed separably
5556

5657
## 1.1.0 [2019-11-19]
@@ -70,7 +71,7 @@
7071
### API
7172
1. [#28](https://github.com/bonitoo-io/influxdb-client-python/pull/28): Updated swagger to latest version
7273

73-
### Bugs
74+
### Bug Fixes
7475
1. [#19](https://github.com/bonitoo-io/influxdb-client-python/pull/19): Removed strict checking of enum values
7576

7677
### Documentation
@@ -85,7 +86,7 @@
8586
### API
8687
1. [#10](https://github.com/bonitoo-io/influxdb-client-python/pull/10): Updated swagger to latest version
8788

88-
### Bugs
89+
### Bug Fixes
8990
1. [#3](https://github.com/bonitoo-io/influxdb-client-python/issues/3): The management API correctly supports inheritance defined in Influx API
9091
1. [#7](https://github.com/bonitoo-io/influxdb-client-python/issues/7): Drop NaN and infinity values from fields when writing to InfluxDB
9192

README.rst

+18
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ InfluxDB 2.0 client features
5858
- authorizations
5959
- health check
6060
- ...
61+
- `InfluxDB 1.8 API compatibility`_
6162
- Examples
6263
- `Connect to InfluxDB Cloud`_
6364
- `How to efficiently import large dataset`_
@@ -859,6 +860,23 @@ Gzip support
859860
860861
.. marker-gzip-end
861862
863+
InfluxDB 1.8 API compatibility
864+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
865+
866+
`InfluxDB 1.8.0 introduced forward compatibility APIs <https://docs.influxdata.com/influxdb/latest/tools/api/#influxdb-2-0-api-compatibility-endpoints>`_ for InfluxDB 2.0. This allow you to easily move from InfluxDB 1.x to InfluxDB 2.0 Cloud or open source.
867+
868+
The following forward compatible APIs are available:
869+
870+
======================================================= ==================================================================================================== =======
871+
API Endpoint Description
872+
======================================================= ==================================================================================================== =======
873+
`query_api.py <influxdb_client/client/query_api.py>`_ `/api/v2/query <https://docs.influxdata.com/influxdb/latest/tools/api/#api-v2-query-http-endpoint>`_ Query data in InfluxDB 1.8.0+ using the InfluxDB 2.0 API and `Flux <https://docs.influxdata.com/flux/latest/>`_ (endpoint should be enabled by `flux-enabled option <https://docs.influxdata.com/influxdb/latest/administration/config/#flux-enabled-false>`_)
874+
`write_api.py <influxdb_client/client/write_api.py>`_ `/api/v2/write <https://docs.influxdata.com/influxdb/latest/tools/api/#api-v2-write-http-endpoint>`_ Write data to InfluxDB 1.8.0+ using the InfluxDB 2.0 API
875+
`health() <influxdb_client/client/influxdb_client.py>`_ `/health <https://docs.influxdata.com/influxdb/latest/tools/api/#health-http-endpointt>`_ Check the health of your InfluxDB instance
876+
======================================================= ==================================================================================================== =======
877+
878+
For detail info see `InfluxDB 1.8 example <examples/influxdb_18_example.py>`_.
879+
862880
Local tests
863881
-----------
864882

examples/influxdb_18_example.py

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
from influxdb_client import InfluxDBClient, Point
2+
3+
username = 'username'
4+
password = 'password'
5+
6+
database = 'telegraf'
7+
retention_policy = 'autogen'
8+
9+
bucket = f'{database}/{retention_policy}'
10+
11+
client = InfluxDBClient(url='http://localhost:8086', token=f'{username}:{password}', org='-')
12+
13+
print('*** Write Points ***')
14+
15+
write_api = client.write_api()
16+
17+
point = Point("mem").tag("host", "host1").field("used_percent", 25.43234543)
18+
print(point.to_line_protocol())
19+
20+
write_api.write(bucket=bucket, record=point)
21+
write_api.__del__()
22+
23+
print('*** Query Points ***')
24+
25+
query_api = client.query_api()
26+
query = f'from(bucket: \"{bucket}\") |> range(start: -1h)'
27+
tables = query_api.query(query)
28+
for record in tables[0].records:
29+
print(f'#{record.get_time()} #{record.get_measurement()}: #{record.get_field()} #{record.get_value()}')
30+
31+
client.close()

0 commit comments

Comments
 (0)