帰省ついでに Azure IoT Hub を試してた

はじめに

2年くらい前から温度湿度をラズパイで取得することをやってた。
kheiakiyama.hateblo.jp

GrowthForecast で可視化していたものの、ラズパイ自体にはグローバルからアクセスできるようにはしていないため、帰省しないと見えないという不満があった。
それをいい具合にしたいと思って IoT Hub を試す決意をしていた。

Azure IoT Hub は Free プランが1日8000メッセージ受信できる ということで、毎分メッセージ送っても使えるのがよさそうだった。

やったこと

試したのはこのあたり。

ラズパイからセンサーデータを IoT Hub に送り、Web App でリアルタイムを見れるのができた。

知見

ラズパイ と Python Azure IoT Hub SDK つらみ

ラズパイ(デバイス)側はいろんな言語が選べる。
はじめに Python 使ったところ Azure IoT Hub の SDK の導入で苦しんだので Node にスイッチした。

Web App の Node version 問題

Free プランだったからかもしれない。
しかし Free プランで Socket I/O 使えたり Azure AD のシングルサインオン連携したりいろいろできて Web App は素晴らしいと思う。

可視化できてない件

リアルタイム可視化はできたけどデータ蓄積するところ作ってなくて全然やりたいことできてない。

そもそもセンサー壊れてた問題

ラズパイの死活監視は個人 Slack に流してるので問題ないのだが、温度湿度センサーが壊れていたことに気づかなかった。
今思うと Mackerel に流してた(こちらも Free プランなのでログは1日まで)ので、そこからアラートしていればもっと早く気付いたのに。
帰省で気付いて次の帰省までに買って持っていく、というの時間がかかってよくない。

ステージング環境というか別環境を都内に作るか。 せっかく ansible で管理していることだし。

あとがき

あまり問題は解決してないけど限られた時間で手を動かすのはよい。