関連ページ
InfluxDB v2: API の使い方
準備
環境設定ファイルの作成
.env
bucket = "dbtest"
org = "ekzemplaro"
token = '***-_nfenN6m5LhKUXNcrQ_H3dZSQo2pVpyyJg6nskHEwcl6bMsjc1vyzY9b11hSyGiQMOg=='
url="http://localhost:8086"
データの書き込み
api_insert.py
#! /usr/bin/python
#
# api_insert.py
#
# Jan/24/2023
#
# ------------------------------------------------------------------
import os
import sys
import json
import requests
from dotenv import load_dotenv
# ------------------------------------------------------------------
sys.stderr.write("*** 開始 ***\n")
#
dotenv_path = '.env'
load_dotenv(dotenv_path)
bucket = os.environ.get("bucket")
org = os.environ.get("org")
token = os.environ.get("token")
url = os.environ.get("url")
#
url_target=url + "/api/v2/write?org=" + org + "&bucket=" + bucket + "&precision=ns"
headers = {'content-type': 'text/plain; charset=utf-8'}
headers['Accept'] = 'application/json'
headers['Authorization'] = 'Token ' + token
data='id=TLM0201 temperature=22.9'
#
rr=requests.post(url_target,data, headers=headers)
print(rr)
#
sys.stderr.write("*** 終了 ***\n")
# ------------------------------------------------------------------
データの読み込み
api_query.py
#! /usr/bin/python
#
# api_query.py
#
# Jan/24/2023
#
# ------------------------------------------------------------------
import os
import sys
import json
import requests
from dotenv import load_dotenv
# ------------------------------------------------------------------
sys.stderr.write("*** 開始 ***\n")
#
dotenv_path = '.env'
load_dotenv(dotenv_path)
bucket = os.environ.get("bucket")
org = os.environ.get("org")
token = os.environ.get("token")
url = os.environ.get("url")
#
url_target=url + "/api/v2/query?org=" + org
headers = {'content-type': 'application/vnd.flux'}
headers['Accept'] = 'application/csv'
headers['Authorization'] = 'Token ' + token
data='from(bucket:"' + bucket + '") |> range(start: -12h)'
#
rr=requests.post(url_target,data, headers=headers)
print(rr.text)
#
sys.stderr.write("*** 終了 ***\n")
# ------------------------------------------------------------------