Grafana を使用して驚くようなダッシュボードを作成する (Raspberry Pi で!)
最近、私の家族はヤモリを飼い始めました。
正確には、カンムリトカゲモドキです。うちの小さな子は、教室のペットとして生まれました。ウォルマートのペットショップ並みの、ちょっと寂しい小さなテラリウムに入っていました。私たちは彼のために、豪華なジャングルの生息地を新たに作ろうと決意し、もうすぐこの素晴らしい家に引っ越します。
彼の名前はエコー。彼の新しい家は、当然ながら「エコー・チェンバー」と名付けられるでしょう。
クレステッドゲッコーは温度と湿度の許容範囲が比較的狭いです。以前のテラリウムでは吸盤にアナログデジタルメーターを取り付けていましたが、今回は新しいシステムでさらにオタク的な使い方をすることにしました。テラリウムにはDHT22プローブを取り付けたRaspberry Pi(旧モデル3)を入れて、5秒ごとに温度と湿度を測定しています。
各測定値は、AdaFruit DHT22ドライバを使用してPostgreSQLデータベースにダンプされます。このコードはGoogle検索やBing、Duck検索で簡単に見つけられるので、ここに貼り付ける必要はありません。Grafanaを実際に使ったのは今回が初めてで、とても楽しかったです。
主な理由は、Grafanaが驚くほど使いやすいからです。Grafanaリポジトリを追加し、aptコマンドを使ってgrafana-serverをインストールするだけの簡単なインストール後、サーバーを起動してログインし、最初のダッシュボードの作成を始めました。.confファイルも用意しておらず、ドキュメントも一切見ませんでした。製品名以外全く知識がない状態から始めて、1時間もかからずにダッシュボードを作成しました。

Grafanaでこれがいかにシンプルかは驚きです。Postgresql DBの認証情報を入力すると、Grafanaがデータ選択という面倒な作業をすべてやってくれました。
上記は4つのパネルを持つシンプルなダッシュボードです。下の2つはシンプルな時系列グラフで、非常に簡単に作成できました。豊富なオプションが用意されていますが、デフォルト設定のままでも十分に使えるグラフを作成できます。上の2つのパネルはゲージで、こちらも簡単に設定でき、警告しきい値をカスタマイズできます。これはデスクトップのスクリーンショットですが、Grafanaは非常にモバイルフレンドリーです。
Raspberry Piとの相性も抜群です。家族全員が別々のデバイスで同時に視聴しても、Raspberry PiのRAM使用量は100~120MB程度です。Postgres、NGINX、Grafana、ポーラー(Pythonスクリプト)、そして通常のバックグラウンドサービスが消費されています。
Grafanaについてはまだほんの一部しかご紹介していませんが、例えば、このプラットフォームを使って監視やアラートの設定も行います。Grafanaは楽しく、驚くほど使いやすく、素晴らしいダッシュボードを作成できる製品です。ぜひお試しください!