Important
This project is no longer in development
This v1 client library is for interacting with InfluxDB 1.x and 1.x-compatible endpoints in InfluxDB 2.x. Use it to:
- Write data in line protocol.
- Query data with InfluxQL.
If you use InfluxDB 2.x (TSM storage engine) and Flux, see the v2 client library.
If you use InfluxDB 3.0, see the v3 client library.
For new projects, consider using InfluxDB 3.0 and v3 client libraries.
InfluxDB-python, the InfluxDB Python Client (1.x), is a client library for interacting with InfluxDB 1.x instances.
InfluxDB is the time series platform designed to handle high write and query loads.
This module is tested with InfluxDB versions v1.2.4, v1.3.9, v1.4.3, v1.5.4, v1.6.4, and 1.7.4.
Users on InfluxDB v0.8.x may still use the legacy client by importing from influxdb.influxdb08 import InfluxDBClient
.
Install, upgrade and uninstall influxdb-python with these commands:
$ pip install influxdb $ pip install --upgrade influxdb $ pip uninstall influxdb
On Debian/Ubuntu, you can install it with this command:
$ sudo apt-get install python-influxdb
The influxdb-python distribution is supported and tested on Python 2.7, 3.5, 3.6, 3.7, PyPy and PyPy3.
Note: Python <3.5 are currently untested. See .travis.yml
.
Main dependency is:
- Requests: HTTP library for human beings (http://docs.python-requests.org/)
Additional dependencies are:
- pandas: for writing from and reading to DataFrames (http://pandas.pydata.org/)
- Sphinx: Tool to create and manage the documentation (http://sphinx-doc.org/)
- Nose: to auto-discover tests (http://nose.readthedocs.org/en/latest/)
- Mock: to mock tests (https://pypi.python.org/pypi/mock)
Documentation is available at https://influxdb-python.readthedocs.io/en/latest/.
You will need Sphinx installed to generate the documentation.
The documentation can be generated by running:
$ tox -e docs
Generated documentation can be found in the docs/build/html/ directory.
Here's a basic example (for more see the examples directory):
$ python >>> from influxdb import InfluxDBClient >>> json_body = [ { "measurement": "cpu_load_short", "tags": { "host": "server01", "region": "us-west" }, "time": "2009-11-10T23:00:00Z", "fields": { "value": 0.64 } } ] >>> client = InfluxDBClient('localhost', 8086, 'root', 'root', 'example') >>> client.create_database('example') >>> client.write_points(json_body) >>> result = client.query('select value from cpu_load_short;') >>> print("Result: {0}".format(result))
Make sure you have tox by running the following:
$ pip install tox
To test influxdb-python with multiple version of Python, you can use Tox:
$ tox
For issues with, questions about, or feedback for InfluxDB, please look into our community page: http://influxdb.com/community/.
We are also lurking on the following:
- #influxdb on irc.freenode.net
- #influxdb on gophers.slack.com
The v1 client libraries for InfluxDB 1.x were typically developed and maintained by InfluxDB community members. If you are an InfluxDB v1 user interested in maintaining this client library (at a minimum, keeping it updated with security patches) please contact the InfluxDB team at on the Community Forums or InfluxData Slack.
All development is done on Github. Use Issues to report problems or submit contributions.
Please note that we will answer you question as quickly as possible.
Maintainers:
Github ID | URL |
---|---|
@aviau | (https://github.com/aviau) |
@xginn8 | (https://github.com/xginn8) |
@sebito91 | (https://github.com/sebito91) |
The source code for the InfluxDB Python Client (1.x) is currently available on Github: https://github.com/influxdata/influxdb-python
The TODO/Roadmap can be found in Github bug tracker: https://github.com/influxdata/influxdb-python/issues