Skip to content

Instantly share code, notes, and snippets.

@t2psyto
Created October 1, 2016 11:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save t2psyto/830a84908f2a85bdabb7feabff49976e to your computer and use it in GitHub Desktop.
Save t2psyto/830a84908f2a85bdabb7feabff49976e to your computer and use it in GitHub Desktop.
measuring ping & download speed, + post to server.
#!/bin/sh
SPEEDTEST_HOST=url01.ookla-speedtest.aseinet.com
GOOGLE_SPLEADSHEET_DOGET_URL=https://script.google.com/macros/s/this-is-example-url-tincbrabrabrabrabrabrabrabrabrabrab/exec
#timestamp "YYYY-MM-DD hh:mm:ss"
TIMESTAMP=`date '+%F %T'`
# ping RTT (ms)
PING=$(ping -c 4 -q ${TARGET_HOST} | awk -F '[/ ]' 'END {print $7}')
# download speed (bps)
SPEED=$(for i in `seq 4`; do \
curl --connect-timeout 60 --max-time 120 -s -o /dev/null http://${SPEEDTEST_HOST}/speedtest/random500x500.jpg \
-w '%{speed_download}'; \
done | awk '{x+=$1} END {print (x*8)/(1024*NR)}')
# do post to server
curl --connect-timeout 60 --max-time 120 -s -L ${GOOGLE_SPLEADSHEET_DOGET_URL} \
-d "timestamp=${TIMESTAMP}" -d "ping=${PING}" -d "speed=${SPEED}" -d "host=${SPEEDTEST_HOST}"
@t2psyto
Copy link
Author

t2psyto commented Oct 3, 2023

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment