Documentation: InfluxDB-Flask Documentation
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.
Install the extension via pip:
$ pip install influxdb-flask
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.
The following configuration values can be set for InfluxDB-Flask extension:
INFLUXDB_V2_URL InfluxDB server API url. Default is <http://localhost:8086>
INFLUXDB_V2_ORG Organization name (used as a default in query and write API). Default is None
INFLUXDB_V2_TOKEN Authentication token.
INFLUXDB_V2_TIMEOUT HTTP client timeout setting for a request specified in milliseconds. Default is 10s.
INFLUXDB_V2_VERIFY_SSL Set this to false to skip verifying SSL certificate when calling API from https server. Default is False.
INFLUXDB_V2_SSL_CA_CERT Set this to customize the certificate file to verify the peer. Default is None.
INFLUXDB_V2_CONNECTION_POOL_MAXSIZE Number of connections to save that can be reused by urllib3. Default is 10.
INFLUXDB_V2_AUTH_BASIC 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.