HenrikBengtsson/speedtest-cli-extras

Invalid number format

Closed this issue · 6 comments

Hi,
I run speedtest-csv every hour:

T-Mobile CZ, Prague
sh speedtest-csv --server 3989 >> stats.tsv

And in some cases I got wrong download results (there is . added before the number):

start stop from from_ip server server_dist (km) server_ping (ms) download (Mbit/s) upload (Mbit/s) share_url
2017-02-07 00:25:02 2017-02-07 00:25:29 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 47.129 55.11 43.30 http://www.speedtest.net/result/6031287998.png
2017-02-07 01:25:02 2017-02-07 01:25:21 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 45.565 119.57 46.82 http://www.speedtest.net/result/6031379719.png
2017-02-07 02:25:02 2017-02-07 02:25:21 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 47.038 144.27 47.96 http://www.speedtest.net/result/6031469289.png
2017-02-07 03:25:03 2017-02-07 03:25:23 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 63.191 136.84 41.40 http://www.speedtest.net/result/6031562050.png
2017-02-07 04:25:02 2017-02-07 04:25:22 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 51.054 126.69 43.30 http://www.speedtest.net/result/6031652500.png
2017-02-07 05:25:02 2017-02-07 05:25:21 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 47.473 126.45 48.20 http://www.speedtest.net/result/6031740129.png
2017-02-07 06:25:03 2017-02-07 06:25:22 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 47.64 128.41 43.98 http://www.speedtest.net/result/6031825283.png
2017-02-07 07:25:02 2017-02-07 07:25:22 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 46.879 .119.43 42.38 http://www.speedtest.net/result/6031913227.png
2017-02-07 08:25:02 2017-02-07 08:25:23 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 47.663 134.29 35.31 http://www.speedtest.net/result/6032008971.png
2017-02-07 09:25:03 2017-02-07 09:25:22 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 49.25 113.60 44.47 http://www.speedtest.net/result/6032114417.png
2017-02-07 10:25:02 2017-02-07 10:25:21 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 48.958 .115.94 45.34 http://www.speedtest.net/result/6032229700.png
2017-02-07 11:25:02 2017-02-07 11:25:21 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 28.699 85.19 43.51 http://www.speedtest.net/result/6032351494.png
2017-02-07 12:25:03 2017-02-07 12:25:23 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 37.643 118.09 44.09 http://www.speedtest.net/result/6032479826.png
2017-02-07 13:25:02 2017-02-07 13:25:25 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 61.414 41.71 24.25 http://www.speedtest.net/result/6032613165.png
2017-02-07 14:25:02 2017-02-07 14:25:22 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 39.195 97.09 40.79 http://www.speedtest.net/result/6032755547.png
2017-02-07 15:25:03 2017-02-07 15:25:24 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 46.253 63.34 34.55 http://www.speedtest.net/result/6032910971.png
2017-02-07 16:25:02 2017-02-07 16:25:25 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 39.249 69.24 27.82 http://www.speedtest.net/result/6033075147.png
2017-02-07 17:25:02 2017-02-07 17:25:23 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 57.186 67.98 34.45 http://www.speedtest.net/result/6033245636.png
2017-02-07 18:25:03 2017-02-07 18:25:24 T-Mobile 193.179.12.180 T-Mobile CZ (Prague) 90.01 52.787 94.07 37.07 http://www.speedtest.net/result/6033420776.png

Am I doing something wrong or is it a bug? Thx

That's odd. I don't see how those periods could sneak in. Maybe it's originating from speedtest-cli used internally. Or, it could be (=wild guess) due to standardization of values (replacing commas with periods), in case your server needs that, but then there need to be a stray comma in there. What do you get if you do:

$ speedtest-csv --no-standardize

It might also be useful to see the output of:

$ speedtest-cli

I tried several times to run speedtest-cli and sometimes there occurs . at the beginning of the download result:
$ python speedtest-cli --server 3989
Retrieving speedtest.net configuration...
Testing from T-Mobile (193.179.12.180)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by T-Mobile CZ (Prague) [90.01 km]: 47.718 ms
Testing download speed................................................................................
Download: 83.22 Mbit/s

$ python speedtest-cli --server 3989
Retrieving speedtest.net configuration...
Testing from T-Mobile (193.179.12.180)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by T-Mobile CZ (Prague) [90.01 km]: 40.12 ms
Testing download speed...............................................................................
.Download: 67.91 Mbit/s

Could this cause the weird behavior?

You're right. I don't know why that happens, but it certainly looks like that stray period should be part of the previous line's "progress bar". It could be that speedtest-cli injects the newline in the wrong place, so probably a bug in speedtest-cli itself.

I've added a workaround for this in speedtest-csv 2.0.0-9000` (= develop) version, which you find here https://github.com/HenrikBengtsson/speedtest-cli-extras/blob/develop/bin/speedtest-csv. Let me know when you've tested it for a day or two and confirmed that the problem is gone. Then I'll release 2.0.1.

FYI, speedtest-csv caches the speedtest-cli output after each run, e.g.

$ log=/tmp/$USER/speedtest-csv.log
$ cat $log
Retrieving speedtest.net configuration...
Testing from T-Mobile (193.179.12.180)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by T-Mobile CZ (Prague) [90.01 km]: 48.958 ms
Testing download speed...............................................................................
.Download: 115.94 Mbit/s
Testing upload speed....................................................................................................
Upload: 45.34 Mbit/s
Share results: http://www.speedtest.net/result/6032229700.png

and you can test speedtest-csv on this file using:

$ speedtest-csv --version
2.0.0-9000

$ speedtest-csv --last
2017-02-07 14:24:43	2017-02-07 14:24:43	T-Mobile	193.179.12.180	T-Mobile CZ (Prague)	90.01	48.958	115.94	45.34	http://www.speedtest.net/result/6032229700.png

So, if you still see this problem, make a copy of /tmp/$USER/speedtest-csv.log. But I think it should be fixed now. Thanks for reporting.

Your patch is probably working - 240 valid samples so far.
Thank you!

Good to hear. Cheers

Just follow up: I just released speedtest-csv 2.0.1, which is now on the master branch.