3
5

More than 3 years have passed since last update.

定期的にネットワーク速度を計測してスプレッドシートにまとめる part1

Last updated at Posted at 2021-03-24

できたもの

こんな感じで1時間ごとに自宅のネットワーク速度を計測してGoogleスプレッドシートにまとめてくれるようになりました。

スクリーンショット 2021-03-25 0.03.19.png

ネットワーク計測とGASにPOSTをリクエストするスクリプトの作成とGASでウェブアプリの作成が主な作業内容です。

下記を参考に作成しました。

ネットワーク速度の計測

pythonのツールであるspeedtestを使用して計測します。

まずはインストールします。

$ pip install speedtest-cli

これで計測できるようになりました。
下記が例です。

$ speedtest --simple
Ping: 10.21 ms
Download: 83.54 Mbit/s
Upload: 90.17 Mbit/s

速度計測用スクリプトの作成

後々、GASにPOSTすることも考慮して、スクリプトを作成します。
下記が作成したスクリプトです。
速度の計測に失敗した場合は3回までリトライするようにしています。

test.sh
#!/bin/bash
########################################
# スピードテスト用スクリプト
#
#
########################################

# スピードテストコマンド
command="/opt/anaconda3/bin/speedtest --simple"

########################################

echo "Start speed test!"

NEXT_WAIT_TIME=0
until RET=`$command` || [ $NEXT_WAIT_TIME -eq 3 ]; do
  # リトライ回数×60秒後にリトライ
  sleep $(( (NEXT_WAIT_TIME++) * 60 ))
done

echo $RET

echo "End speed test!"

スクリプトを実行できるようになりました。

$ sh test.sh 
Start speed test!
Ping: 13.226 ms Download: 88.75 Mbit/s Upload: 5.55 Mbit/s
End speed test!

最後に

コマンドでネットワーク速度を計測できるようになったところで part2 に続きます。

参考

3
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
5