influxはversion v1.11.8 を使用します。
まずはテストデータを追加します。
influxDBのインストールについては下記の記事を参照してください。
あわせて読みたい


[InfluxDB V1.x]セットアップからNode-REDとの連携まで
前提条件:Ubuntu22.04 Node-REDインストール済み ポート開放(外部接続時のみ必要): 8086/tcp ※本記事はInfluxDB 1.x系のインストール手順です。ブラウザ設定も可能な…
注意:2.0系では、1.0系と同じようにシェルのようにコマンドを実行することができません。
ためしにinfluxと入力してもshell画面に以降しないはずです。2.0系は基本ブラウザベースで操作を進める必要があります。
1. Python用ライブラリのインストール
pip3 install influxdb
pipがインストールされていない場合は、別途インストールしてください。
2. データベースの作成(CLIでもOK)
influx
> CREATE DATABASE testdb
> exit
ここではデータベース名を「testdb」としています。任意の名前でもOKです。
今回は温度と電力を示すOndo , Powerのデータを仮で作成します。
【Pythonスクリプト例】(例:influx_write_1x.py
)
適当なファイルを作成します。
nanoinflux_write_1x.py
以下の内容を追記します。from influxdb import InfluxDBClient
import random
import datetime
# ----- ここを書き換えてください -----
host = 'localhost' # or サーバのIPアドレス
port = 8086
database = 'testdb' # 作成したデータベース名
client = InfluxDBClient(host=host, port=port, database=database)
base_time = datetime.datetime.utcnow()
for i in range(1000):
timestamp = (base_time + datetime.timedelta(seconds=i)).strftime('%Y-%m-%dT%H:%M:%SZ')
ondo = round(random.uniform(20, 30), 2)
power = round(random.uniform(100, 200), 1)
json_body = [
{
"measurement": "sensor_data",
"time": timestamp,
"fields": {
"Ondo": ondo,
"Power": power
}
}
]
client.write_points(json_body)
print("書き込み完了")
client.close()
スクリプトの実行
python3 influx_write_1x.py
データベース追加できていることの確認
- influx CLIなら
-
influx
> USE testdb
> SELECT * FROM sensor_data LIMIT 10
10個のデータが表示されれば成功です。
【1】Grafanaのインストール
もし未インストールなら以下で導入できます。
sudo apt update
sudo apt install -y apt-transport-https software-properties-common wget
wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee /etc/apt/sources.list.d/grafana.list
sudo apt update
sudo apt install -y grafana
sudo systemctl enable grafana-server
sudo systemctl start grafana-server
【2】Grafanaへログイン
- ブラウザで
http://<サーバのIPアドレス>:3000
- 初期ユーザー:
ユーザー名: admin パスワード: admin
(初回ログイン時に新しいパスワード設定を求められます)
もしログインできない場合は、VPSのパケットフィルターでTCP3000番の開放が必要です。
また、ubuntuでもfirewallに3000番を許可しなければいけません。
sudo ufw allow 3000/tcp #ufwの状態の確認 3000が許可されているか
sudo ufw allow 3000/tcp #許可されていなければ許可対象に追加
【3】InfluxDB(1.x)をデータソースとして追加
- 左の「歯車マーク」→「Data sources」→「Add data source」
- 「InfluxDB」を選択

設定例
- URL
http://localhost:8086
※InfluxDBが別サーバならhttp://<そのIP>:8086
- Database
testdb
(あなたが作成したDB名) - User / Password
未設定なら空欄のまま - HTTP Method
基本デフォルト(GET)
下の「Save & Test」で**緑色の「Data source is working」**が出れば成功!

【4】パネル(グラフ)作成
- 右側の「+」→「New Dashboard」→「Add visualization」
- 「Queries」欄で
- Data source: 先ほど登録したInfluxDB
- FROM →
sensor_data
- SELECT →
mean("Ondo")
など(もしくはlast("Ondo")
でもOK) - GROUP BY →
time($__interval)
- 右側でグラフタイプ(折れ線、棒グラフなど)を選択
- タイトルや表示範囲を好みに設定
Apply
(保存)でダッシュボード完成
あわせて読みたい


[InfluxDB V2.x]管理画面のGUI操作から外部アプリケーション(Grafana)との連携まで
influxDBのインストールについては下記の記事を参照してください。 注意:2.0系では、1.0系と同じようにシェルのようにコマンドを実行することができません。 ためしにi…
コメント