SwitchBotで取得した温度と湿度を表示したので、その方法を記録します。

PrometheusもGrafanaも「あー、こういうものね。」とそのプロダクトの位置づけみたいなのはなんとなく理解できます。が、実際に使ってみて感覚的にわかることがあるので、実装して使ってみることが大事ですね。

Exporter

以下のExporterを使用しました。

Azuki-bar/switchbot-prometheus-exporter: Exports Tempreture and Humidity collect from SwitchBot API.

これをそのまま起動しても動作しません。READMEを参照すると、環境設定が必要とのことだったので、とりあえず使えればいいかと思いコードを直接書き換えました。

docker composeで起動

さらに、dockerで動かしたかったのでリポジトリにあったDockerfileを使用しました。

動いたことを確認したら、ゆくゆくはPrometheusとGrafanaのdocker-composeで動かしたかったのでまずは単独のyamlを書きました。

参考

switchbot-exporterを書いた | something tech.

ローカルでPrometheusとGrafanaでダッシュボード作成してみる | amateur engineer’s blog

Docker×Grafana×Prometheusで自宅サーバ監視~NginxでのSSLリバースプロキシを添えて~

Prometheus と Alertmanager によるモニタリングシステム入門

DockerでPrometheus, Grafana, Alertmanagerを動かす - Qiita