Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Results no longer displaying #75

Open
monty974 opened this issue Apr 22, 2021 · 41 comments
Open

Results no longer displaying #75

monty974 opened this issue Apr 22, 2021 · 41 comments

Comments

@monty974
Copy link

My speedtest has been working solidly for over a year now, however from saturday or so it stopped displaying. doesn't matter what i do the graph draws but no results come up. I have tried deleting the results.csv to create a new one but now it says "invalid date" on the x axis. I pulled the latest version to see if that fixed it but no luck

results are being written to the file, but not sure if there is an issue with the way it gets written.

result.zip

@github-iw
Copy link

Is the 1.2 version still working for you? In my setup latest version does run the speedtest (with the same invalid date error you have) but results are written correctly as the 1.2 version can show those results in the graph

@Developer22974
Copy link

Had the same issue, and did some research. In evaluation.js the processing of the timestamps fails. I guess the structure of the row.data[0] object of the Papa.parse has changed.

Changing the row.data[0] to row.data resolved the issue for me.

I hope that information helps.

@Travion1976
Copy link

Travion1976 commented May 10, 2021

I also have the issue with the results not showing in the graph.
Currently running 1.3. and changed the row.data[0] to row.data
-> Results are showing up. It did the trick. Thanks @Developer22974

@cosyd
Copy link

cosyd commented May 14, 2021

Same here. Using the docker container and manually fixed it there as a temporary workaround - changed row.data[0] to row.data and all is working again.

cosyd added a commit to cosyd/docker-speedtest-analyser that referenced this issue May 14, 2021
Changed line 93 row.data[0] to row.data as per roest01#75
@monty974
Copy link
Author

Had the same issue, and did some research. In evaluation.js the processing of the timestamps fails. I guess the structure of the row.data[0] object of the Papa.parse has changed.

Changing the row.data[0] to row.data resolved the issue for me.

I hope that information helps.

Hi there, I found the file and edited the row but still not joy. Did i miss something else I needed to do?

@Travion1976
Copy link

What I found out was to clear the cache of the browser. Then do a refresh. Did you do this?
Also maybe try out other browsers just to do some testing.

@monty974
Copy link
Author

What I found out was to clear the cache of the browser. Then do a refresh. Did you do this?
Also maybe try out other browsers just to do some testing.

That did the trick… I just tried an incognito mode and yes i can see it now! Thanks so much for your tips!

@Travion1976
Copy link

Awesome !
Yeah, it took me a while to figure that one out.
I'm glad I could help.

Weird enough I am having the issue that the tester does not automatically run , it does it sporadically. So I have a 11am, then again 1pm, then again 3pm , then again 9pm.
No pattern to be seen. I need to do some digging.

@Webreaper
Copy link

Webreaper commented May 25, 2021

Just spun this up and I'm seeing no results either. Incognito mode/clearing the cache doesn't help. Is the PR going to be merged and a new release pushed out soon, or do I need to manually hack the js per the comments above?

Edit: Hacked the js per the PR to remove the '[0]' and it's working now. :)

@jaxjexjox
Copy link

I just did this and it looks like the file is able to be written but it has 0 content inside it? It's blank (fresh fresh copy)?

@Travion1976
Copy link

That's weird that there is no content.

These are the steps I use:

Open Docker -> open the docker container -> goto terminal -> create -> bash windows opens

In terminal -> cd /var/www/html/js
vi evaluation.js

go to line Papa.parse("data/result.csv", {
There you will find the line
let dataArr = row.data;

See if this works

@jaxjexjox
Copy link

Sorry I apologise, I mean "I've just done this" as in I've re-run a fresh container.

I have not edited the contents of an existing one and I have a script, which stops, deletes, pulls fresh and re-spins all my containers once a week, so as soon as I commit a change to fix this one problem, a week later it will break again.

I suspect the fix needs to be done by roest01

@Travion1976
Copy link

Ah ok gotcha.

@jaxjexjox
Copy link

I've actually mapped out /var/www/html/js into my filesystem.

-v /dockerconfigs/speedtestanalyzer/js:/var/www/html/js

I've copied the contents of the files into here and about 2/3 down in the .js text file I removed the [0] and it has not worked.
I give up at this stage and I'll wait for the developer to fix the bug in the original docker container, it's (presumably?) a very quick and simple process, tho it has been broken for months now, perhaps he's very busy.

@Travion1976
Copy link

Great idea to map it to your filesystem and interesting that the fix doesn't work for you.
But I agree, hopefully the developer can fix this. Let's see.

@jaxjexjox
Copy link

So is this over and done with?

@jaxjexjox
Copy link

I guess this is dead. Thsi is a shame, my replacement just stuffed up too.

@monty974
Copy link
Author

monty974 commented Sep 6, 2021

I never got it to work again.. It's still collecting data but won't display at all.

@jaxjexjox
Copy link

Need only edit a single file but it's awkward to do unfortunately.
Also editing the file, didn't work for me personally.

@monty974
Copy link
Author

monty974 commented Sep 6, 2021

yes I did the edit as well, didn't work for me either.

@jaxjexjox
Copy link

Thanks, I thought I was an idiot, being unable to figure it out! - Maybe someone sharp made a good fork of it, I havne't checked that.

@meyerje
Copy link

meyerje commented Sep 6, 2021

That's weird that there is no content.

These are the steps I use:

Open Docker -> open the docker container -> goto terminal -> create -> bash windows opens

In terminal -> cd /var/www/html/js
vi evaluation.js

go to line Papa.parse("data/result.csv", {
There you will find the line
let dataArr = row.data;

See if this works

This continues to work for me. Note the let dataArr = row.data; is the correction. The original line looks like this: let dataArr = row.data[0];

It is line 93 of the original file: https://github.com/roest01/docker-speedtest-analyser/blob/master/js/evaluation.js#L93

To get into the shell of the running docker container execute the command docker exec -it <containername> sh. From there the cd / and vi commands will work.

@monty974
Copy link
Author

monty974 commented Sep 7, 2021

That's what I changed mine to initially, but still no joy.. even restarting the container etc didn't help

image

@jaxjexjox
Copy link

That's weird that there is no content.
These are the steps I use:
Open Docker -> open the docker container -> goto terminal -> create -> bash windows opens
In terminal -> cd /var/www/html/js
vi evaluation.js
go to line Papa.parse("data/result.csv", {
There you will find the line
let dataArr = row.data;
See if this works

This continues to work for me. Note the let dataArr = row.data; is the correction. The original line looks like this: let dataArr = row.data[0];

It is line 93 of the original file: https://github.com/roest01/docker-speedtest-analyser/blob/master/js/evaluation.js#L93

To get into the shell of the running docker container execute the command docker exec -it <containername> sh. From there the cd / and vi commands will work.

I'm honestly not super super dumb, with linux, I promise but I had real issues with this. I think VI is not fun to work with, however I did manage to edit the ghastly thing and it still didn't work for me.

I wonder if someone can just spin off a fork of it, that's fixed? (is it that simple? I don't actually 'get' forks yet)

@meyerje
Copy link

meyerje commented Sep 7, 2021

I updated the container image I was using and see the results not flowing anymore as well. Looking at the logs the actual speetest python commands were erroring out. I was able to resolve this by going into the container and executing pip3 install speedtest-cli. Once you do this, restart the container and try running a manual test.

@monty974
Copy link
Author

monty974 commented Sep 7, 2021

sadly that didn't work for me. it's still running and recording results, it's just not displaying the results. I checked the results.csv and it's writing the results.

@jaxjexjox
Copy link

I'm glad people are discussing this again at least, thanks for the help.
My chart is full of "invalid date" all through it to be honest.

I suspect even if I nuke the container and the data, it'll still be broken.

@cosyd
Copy link

cosyd commented Sep 7, 2021 via email

@jaxjexjox
Copy link

You want:
https://github.com/ansemjo/speedtest-plotter
and or
https://github.com/henrywhitaker3/Speedtest-Tracker/ (currently broken, fixed soon)

@jaxjexjox
Copy link

Here are the lists of all the forks? Does anyone know how to check which one is the best or most updated?
https://github.com/roest01/docker-speedtest-analyser/network/members

@pdchristian
Copy link

That's weird that there is no content.
These are the steps I use:
Open Docker -> open the docker container -> goto terminal -> create -> bash windows opens
In terminal -> cd /var/www/html/js
vi evaluation.js
go to line Papa.parse("data/result.csv", {
There you will find the line
let dataArr = row.data;
See if this works

This continues to work for me. Note the let dataArr = row.data; is the correction. The original line looks like this: let dataArr = row.data[0];
It is line 93 of the original file: https://github.com/roest01/docker-speedtest-analyser/blob/master/js/evaluation.js#L93
To get into the shell of the running docker container execute the command docker exec -it <containername> sh. From there the cd / and vi commands will work.

I'm honestly not super super dumb, with linux, I promise but I had real issues with this. I think VI is not fun to work with, however I did manage to edit the ghastly thing and it still didn't work for me.

I wonder if someone can just spin off a fork of it, that's fixed? (is it that simple? I don't actually 'get' forks yet)

This worked for me: remove the [0] from the row.data[0]

@jaxjexjox
Copy link

I've edited the file again, the package is literally not writing out to /var/www/html/data, where it's supposed to store the csv (??) file which contains the tests.

Do I need to stop and start the container or something?

@monty974
Copy link
Author

monty974 commented Sep 28, 2021 via email

@JacobOkanta
Copy link

Since this project seems to be dead and no longer functioning properly (at least for many/most), and people are looking for alternatives I thought I'd mention this project. https://github.com/henrywhitaker3/Speedtest-Tracker I've been using this for a few months. It seems to work really well and I personally prefer the dashboard there plus there is influxdb integration if you use Grafana dashboards.

@jaxjexjox
Copy link

Thanks @JacobOkanta I've posted that one beofre too, there's plotter and tracker.

ansemjo/speedtest
and
henrywhitaker3/speedtest-tracker

Mind you tracker did have a bug recently that took a few weeks to fix.
I still much prefer the final look of roests analyser to be honest, graphically that is, but I'm not smart enough to fix the broken design.

Maybe the poor fella died of covid or something.

@ghost
Copy link

ghost commented Nov 29, 2021

That’s exactly what I have done and it still doesn’t work. There is something else wrong seomwhere. From: pdchristian @.> Sent: Wednesday, 29 September 2021 07:37 To: roest01/docker-speedtest-analyser @.> Cc: monty974 @.>; Author @.> Subject: Re: [roest01/docker-speedtest-analyser] Results no longer displaying (#75) That's weird that there is no content. These are the steps I use: Open Docker -> open the docker container -> goto terminal -> create -> bash windows opens In terminal -> cd /var/www/html/js vi evaluation.js go to line Papa.parse("data/result.csv", { There you will find the line let dataArr = row.data; See if this works This continues to work for me. Note the let dataArr = row.data; is the correction. The original line looks like this: let dataArr = row.data[0]; It is line 93 of the original file: https://github.com/roest01/docker-speedtest-analyser/blob/master/js/evaluation.js#L93 To get into the shell of the running docker container execute the command docker exec -it sh. From there the cd / and vi commands will work. I'm honestly not super super dumb, with linux, I promise but I had real issues with this. I think VI is not fun to work with, however I did manage to edit the ghastly thing and it still didn't work for me. I wonder if someone can just spin off a fork of it, that's fixed? (is it that simple? I don't actually 'get' forks yet) This worked for me: remove the [0] from the row.data[0] — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub <#75 (comment)> , or unsubscribe https://github.com/notifications/unsubscribe-auth/AP2UAUANRCP377FZLJ7UAJLUEIYQFANCNFSM43LODG7Q . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub . https://github.com/notifications/beacon/AP2UAUBH3KOUU4ANDFM2SPDUEIYQFA5CNFSM43LODG72YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOG5UT2UI.gif

I followed this and it resolved the issue for me. I had to remember to use Private Window in order to see the change since Safari was caching the original result.

Thanks!!

@jaxjexjox
Copy link

@marchos77 Several people have done this, via multiple methods and it hasn't worke.d

I've edited it within the container, I've used SMB to put the file outside the container and edit it via nano or even Windows.
I've restarted the container with editing - none of this works, it simply is broken.

Someone please just needs to write a fork. It's still the best looking speedtest.

@bkraul
Copy link

bkraul commented Dec 31, 2021

I've edited the file again, the package is literally not writing out to /var/www/html/data, where it's supposed to store the csv (??) file which contains the tests.

Do I need to stop and start the container or something?

Make sure your mapped data folder (and the files you put in it, such as config, etc), has chown rights for 100:101 which is the nginx user in the container. Once I did that, the file result.csv was written.

As far as the invalid date, I got it fixed as suggested (by removing the [0] from row.data in file evaluation.js (approx. line 93).

For ease, I copied evaluation.js to my mapped data folder and manually mapped it in my docker-compose.yml with:

      # map to fixed evaluation.js script.
      - ~/docker-persist/speetest-analyser/data/evaluation.js:/var/www/html/js/evaluation.js

Where ~/docker-persist is the folder for storing data for my containers.

My data folder listing looks like this:

49807668  4 drwxrwsr-x 2 systemd-network systemd-journal 4096 Dec 31 13:14 .
49807576  4 drwxrwsr-x 3 ops             ops             4096 Dec 31 12:45 ..
49807672  4 -rw-r--r-- 1 systemd-network systemd-journal 1148 Dec 31 12:57 appConfig.js
49807669 12 -rw-r--r-- 1 systemd-network systemd-journal 9489 Dec 31 13:02 evaluation.js
49807604  4 -rw-r--r-- 1 systemd-network systemd-journal  142 Dec 31 13:16 result.csv

Where systemd-network on my docker host is 100, and systemd-journal is 101.

image

The only thing that remains yet to be seen is if the crontab will actually run on the hour. From what I can tell, it might not. I got these results by running manually.

Update:

The cronjob does does not work when invoked by the crontab. I get this:

speed_1  | Traceback (most recent call last):
speed_1  |   File "/var/www/html/scripts/speedtestRunner.py", line 62, in <module>
speed_1  |     runSpeedtest()
speed_1  |   File "/var/www/html/scripts/speedtestRunner.py", line 27, in runSpeedtest
speed_1  |     s.get_best_server()
speed_1  |   File "/usr/lib/python2.7/site-packages/speedtest.py", line 1495, in get_best_server
speed_1  |     raise SpeedtestBestServerFailure('Unable to connect to servers to '
speed_1  | speedtest.SpeedtestBestServerFailure: Unable to connect to servers to test latency.

I am suspecting that the user context is wrong (it is running under root when it probably should run under nginx. Will report back after I do some testing.

Last update:

The cron does work, but intermittently. At least I have data points through the day, that should be enough for me.

@jaxjexjox
Copy link

You could just switch to tracker or plotter, sadly this one is abandoned.

@bkraul
Copy link

bkraul commented Jan 3, 2022

@jaxjexjox
Copy link

Also this one.
https://github.com/ansemjo/speedtest-plotter

Analyser isn't worth the effort in fixing it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests