Pagina 1 van 1

EDPnet snelheid, gemeten over 14 dagen

Geplaatst: 20 okt 2009, 02:38
door littlebighuman
UPDATE2: Ik heb een beter script geschreven zie voor meer info beneden of op mijn blog: http://www.littlebighuman.com/?p=368

UPDATE: Google doc links zouden nu moeten werken (als het goed is)

Ik heb de laatste tijd nogal vaak last van lage download snelheden. Omdat ik de afgelopen tijd veel op mijn werk zat (van 7 tot 19:00 ongeveer) en het ook 's avonds het erg druk had, leek het mee een goed idee om een scriptje te schrijven dat elk uur de speedtest.edpnet.be test doet.

Als output heb ik een CSV file gegenereerd en in Excel geimporteerd, gesorteerd en in Google docs geladen met als output deze grafiek:
http://spreadsheets.google.com/oimg?key=0Aj9EQXqRh4WHdEFmaVhmaXdDNF9pX1A0dnFCMmdYYnc&oid=2&v=1256023505962

De spreadsheet zelf is hier te vinden: http://spreadsheets.google.com/ccc?key=0Aj9EQXqRh4WHdEFmaVhmaXdDNF9pX1A0dnFCMmdYYnc&hl=en_GB

Ter info, ik heb in deze periode erg weinig gedownload. Op basis van de grafiek kun je concluderen dat ik regelmatig een dip in mijn download snelheid heb. Het patroon lijkt zo rond 15:30 te beginnen, maar soms ook al om 13:30 en dan tot aan zeker 00:00.


Voor de geintreseerden het (vrij lompe) script:

Code: Selecteer alles

#! /bin/bash
COUNTER=OMEGA
while [ $COUNTER = OMEGA ]; do
   wget "http://speedtest.edpnet.be/speedtest4.php"
   sleep 3600
done


Vervolgens heb ik de output met een ander script verwerkt met als output een csv file:

Code: Selecteer alles

#! /bin/bash

month=october
year=2009
for file in *.php; do
        day=$(ls -l $file | awk '{print $7}')
        time=$(ls -l $file | awk '{print $8}')
        kbytedot=$(awk '/Your result is/ {print $5}' $file)
        kbyte=$(echo ${kbytedot} | sed 's/\./\,/g')
        echo "$day-$month-$year $time|$kbyte"
done

Re: EDPnet snelheid, gemeten over 14 dagen

Geplaatst: 20 okt 2009, 07:51
door Génicus
Bedankt, ik denk dat ik het ga gebruiken

Re: EDPnet snelheid, gemeten over 14 dagen

Geplaatst: 20 okt 2009, 09:04
door Goztow
Ik kan je links niet bekijken (firefox).

Re: EDPnet snelheid, gemeten over 14 dagen

Geplaatst: 20 okt 2009, 11:45
door Ofloo
eerlijk gezegd voor mij geeft die site een 2mbit aan, .. nu denk ik dat dit met routing te maken heeft want ik kan met hogere snelheden van andere sites downloaden.

Re: EDPnet snelheid, gemeten over 14 dagen

Geplaatst: 20 okt 2009, 11:49
door littlebighuman
Ofloo schreef:eerlijk gezegd voor mij geeft die site een 2mbit aan, .. nu denk ik dat dit met routing te maken heeft want ik kan met hogere snelheden van andere sites downloaden.


speedtest.edpnet.be is inderdaad vooral bedoeld voor EDPnet klanten.

Re: EDPnet snelheid, gemeten over 14 dagen

Geplaatst: 21 okt 2009, 14:32
door littlebighuman
Een nieuwe versie van het script. Nu volledig standalone en automatische output in CSV format.

Code: Selecteer alles

#! /bin/bash
#! /bin/bash
# DESCRIPTION:
# Simple script to monitor your EDPnet ADSL connection speed by doing the speedtest.edpnet.be test on a set interval
# This script uses an infinite loop with a while loop that never ends, which is crude, but makes it easy to employ
# Output is in CSV format optimized for Excel import, script does some simple log numbering as well

# USAGE:
# Best is to run in it the background with: edpspeedtest.sh &
# Don't forget it to kill it when your are done or it will run until the computer is restarted
# Use ps | grep edpspeedtest to find the process number to kill when you want to stop the script.

# EXCEL IMPORT:
# In Excel do > File > Import > CSV > Finish. Or manually specify the comma seperator and double quotes as field markers

# VARIABLES
TEMPFILE=tempfile
# CSV file name, csv extension automatically appended as well as a log number
CSV=speedtest-log
SEPERATOR=","
# If you want you can change the interval at which the test is run (in seconds)
INTERVAL=3600
# Used for the infinite while loop
COUNTER=OMEGA

# Find logfile with highest number and determine the log number for this run
OLDNR=$(find . -name "$CSV*.csv" -maxdepth 1 | cut -d"." -f3 | sort -nr | head -n 1)
NR=$(($OLDNR + 1))

echo "Script running, infinite while loop in effect"

# Print header row and create log file
echo "\"Date and time\"$SEPERATOR\"Speed in Kbyte\"" > $CSV.$NR.csv

while [ $COUNTER = OMEGA ]; do

   # Execute the speedtest
   curl -A "Mozilla/5.0 Littlebighuman.com/edpspeedtest.sh 1.0" -s "http://speedtest.edpnet.be/speedtest4.php" -o $TEMPFILE
   
   # Get the line with the data we need
   DATALINE=$(cat "$TEMPFILE" | awk '/Your result is/')

   # Empty TEMPFILE for the next while run
   cat /dev/null > $TEMPFILE

   # Get the current time and date
   CURRENTDATE=$(date +"%d-%m-%Y %H:%M")

   # Get the speed in kbyte and replace the dot with a comma for Belgium international format
   SPEED=$(echo $DATALINE | awk '{print $5}' | sed 's/\./\,/g')

   # Output in CSV format
   echo "\"$CURRENTDATE\"$SEPERATOR\"$SPEED\"" >> $CSV.$NR.csv
   
   # Sleep
   sleep $INTERVAL
done

Re: EDPnet snelheid, gemeten over 14 dagen

Geplaatst: 26 okt 2009, 22:52
door murda
Kan ik dit script laten runnen op mijn Qnap NAS?

Re: EDPnet snelheid, gemeten over 14 dagen

Geplaatst: 27 okt 2009, 21:36
door Génicus
als je aan je NAS zijn console geraakt, hij bash-scriptjes kan lezen, en hij wget aan boord heeft. Ja