インターネット速度を定期的に測定する
マンションのインターネット速度が夜間になると遅くなるような気がしていたので管理会社向けのファクト収集のために 30分おきのインターネット速度を収集することにした。
ちょろっと調べると定期的に収集し統計情報としてグラフ化してくれるようなツールはいくつか見つかったのだが、これくらいだったら自分でやってしまった方が早いし手軽なのではと思いやってみたメモ。
omuomugin/internet-speed-cron に実際作ったものを置いてあるが雑にいうと以下のようなことをしているだけ
- シェルスクリプトの中で
networkQualityを実行 - 取得した JSON から必要な分だけ csv に書き込み
watchコマンドで定期的に上記のシェルスクリプトを実行- graph-cli を使ってシュッとグラフ化
最初は cron を登録して実行しようかとも思ったが管理が面倒で好きじゃなくてちょっと調べたところ macOS で watch を使うことができるようだったのでそれを使ってみた。
案の定止めたい時には Ctrl+C で止めるだけなのでひとまず測定したいというだけのニーズを満たしてくれた。
graph-cli は CLI でシュッとグラフを描画できればなんでもよかった。
DuckDB で加工してとかも考えたがもうちょっと細かくデータを手直ししたいケースがあったら考えることにする。
実際夜間に急に回線が悪くなることがわかったので管理会社と話そうと思う。