File: README.rst

package info (click to toggle)
influxdb-python 3.0.0-1~bpo8%2B1
  • links: PTS, VCS
  • area: main
  • in suites: jessie-backports
  • size: 456 kB
  • sloc: python: 5,140; makefile: 7
file content (169 lines) | stat: -rw-r--r-- 4,730 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169


InfluxDB-Python is a client for interacting with InfluxDB_. Maintained by @aviau (https://github.com/aviau).

**Help needed:** Development of this library is made by the community and help is needed. A co-maintainer would be welcome. To contribute, take a look at the issues list of simply contact @aviau.

.. image:: https://travis-ci.org/influxdata/influxdb-python.svg?branch=master
    :target: https://travis-ci.org/influxdata/influxdb-python

.. image:: https://readthedocs.org/projects/influxdb-python/badge/?version=latest&style
    :target: http://influxdb-python.readthedocs.org/
    :alt: Documentation Status

.. image:: https://img.shields.io/coveralls/influxdata/influxdb-python.svg
  :target: https://coveralls.io/r/influxdata/influxdb-python
  :alt: Coverage

.. _readme-about:

InfluxDB is an open-source distributed time series database, find more about InfluxDB_ at http://influxdata.com/


.. _installation:

InfluxDB v0.8.X users
=====================

InfluxDB 0.9 was released and it is the new recommended version. However, InfluxDB 0.8.x users may still use the legacy client by using ``from influxdb.influxdb08 import InfluxDBClient`` instead.

Installation
============

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

Dependencies
============

The InfluxDB-Python distribution is supported and tested on Python 2.7, 3.3, 3.4, 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
=============

InfluxDB-Python documentation is available at http://influxdb-python.readthedocs.org

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.


Examples
========

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))

If you want to connect to a cluster, you could initialize a ``InfluxDBClusterClient``::

    $ python

    >>> from influxdb import InfluxDBClusterClient

    >>> cc = InfluxDBClusterClient(hosts = [('192.168.0.1', 8086),
                                            ('192.168.0.2', 8086),
                                            ('192.168.0.3', 8086)],
                                   username='root',
                                   password='root',
                                   database='example')

``InfluxDBClusterClient`` has the same methods as ``InfluxDBClient``, it basically is a proxy to multiple InfluxDBClients.

Testing
=======

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


Support
=======

For issues with, questions about, or feedback for InfluxDB_, please look into
our community page: http://influxdb.com/community/.


Development
===========

All development is done on Github_. Use Issues_ to report
problems or submit contributions.

.. _Github: https://github.com/influxdb/influxdb-python/
.. _Issues: https://github.com/influxdb/influxdb-python/issues


TODO
====

The TODO/Roadmap can be found in Github bug tracker: https://github.com/influxdata/influxdb-python/issues


Source code
===========

The source code is currently available on Github: https://github.com/influxdata/influxdb-python


.. _InfluxDB: https://influxdata.com/time-series-platform/influxdb/
.. _Sphinx: http://sphinx.pocoo.org/
.. _Tox: https://tox.readthedocs.org