InfluxDB-Python is a client for interacting with InfluxDB.
Development of this library is maintained by:
Github ID | URL |
---|---|
@aviau | (https://github.com/aviau) |
@xginn8 | (https://github.com/xginn8) |
@sebito91 | (https://github.com/sebito91) |
InfluxDB is an open-source distributed time series database, find more about InfluxDB at https://docs.influxdata.com/influxdb/latest
This module is tested with InfluxDB v1.2.4, our recommended version. Though there have been v1.3 (initial TSI branch) and v1.4 releases these are not yet supported.
Those users still on InfluxDB v0.8.x users 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.3, 3.4, 3.5, 3.6, PyPy and PyPy3.
Note: Python 3.2 is 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
All development is done on Github. Use Issues to report problems or submit contributions.
Please note that we WILL get to your questions/issues/concerns as quickly as possible. We maintain many software repositories and sometimes things may get pushed to the backburner. Please don't take offense, we will do our best to reply as soon as possible!
The source code 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