InfluxDB-Flask¶
Introduction¶
InfluxDB went for a massive change from v1.7 to v2.0. They introduced a new client library influxdb-client-python to interact with the InfluxDB v2 API. InfluxDB-Flask adds influxdb-client-python support to Flask.
Note: Use this library with InfluxDB 2.x and InfluxDB 1.8+. For connecting to InfluxDB 1.7 or earlier instances, use the Flask-InfluxDB that uses InfluxDB-Python as client library.
The API of the influxdb-client-python is not the backwards-compatible with the old one - influxdb-python.
Installation¶
Install the extension via pip:
$ pip install influxdb-flask
Set Up¶
Influxdb_client can be accessed via InfluxDB class:
from flask import Flask
from influxdb_flask import InfluxDB
app = Flask(__name__)
influxdb = InfluxDB(app)
Delayed configuration of InfluxDB
is also supported via init_app method:
influxdb = InfluxDB()
app = Flask(__name__)
influxdb.init_app()
Currently InfluxDB.connection
instance provides the functionality of InfluxDBClient
.
An included example shows how to write and query data from InfluxDB.
Configuring InfluxDB-Flask¶
The following configuration values can be set for InfluxDB-Flask extension:
|
InfluxDB server API url. Default is http://localhost:8086 |
|
Organization name (used as a default in query and write API). Default is None |
|
Authentication token |
|
HTTP client timeout setting for a request specified in milliseconds. Default is 10s. |
|
Set this to false to skip verifying SSL certificate when calling API from https server. Default is False |
|
Set this to customize the certificate file to verify the peer. Default is None. |
|
Number of connections to save that can be reused by urllib3. Default is 10. |
|
Set this to true to enable basic authentication when talking to a InfluxDB 1.8.x that does not use auth-enabled but is protected by a reverse proxy with basic authentication. Default is False. |