LabTech Plugin: Ookla SpeedTest
Posted on December 19, 2014
NOTE: This plugin has received lots of updates and is in version 2.x. Check it out here!
This plugin uses a script (which you can schedule to run regularly on any groups/devices you want it to) to get a SpeedTest result and presents the data in a new tab for each agent/client. The tab name is SpeedTest. The script will clean up old entries > 60 days, but that can of course be adjusted. Speedtest.exe (speedtest-32.exe) is used to conduct the test and the results are stored in a table in the database. This table should automatically be created the first time you view the SpeedTest tab, so open the tab before running the script.
To use: Open up the computer in LT and click the SpeedTest tab. Run the script and wait for the results – refresh when done. You can see a graph with history of each of the tests on that one computer. Click each individual entry will show some speed-o-meters to help visualize the results. Clicking the location SpeedTest tab will show you all results for the location as well as the computer ID. You also get the graph of historical points, but no speed-o-meter.
Max speed test result vs average speed test result.
This plug-in uses the speedtest.exe program created by thehelpfulhacker.net. It’s an extremely simple tool that return just the information needed. With version .07 of the app, it returned the AVERAGE speed test results. This average is based on the total download size and time and gives an accurate picture of speeds during the entire download. With the release of .08, you can choose to obtain the MAX result. This maximum result shows numbers more in line with what you’d see from going to the website speedtest.net. However, this number is the MAXIMUM download/upload speed that was reached. So it not reflect an accurate overall picture of speed, but it will allow you to see if the customer is getting what they’re paying for as far as peak speed is concerned.
If you would like to use maximum speed over average speed, you can download the latest version here. It will, by default, return the maximum speed so no changes to the script are needed. Simply replace the file in L:\transfer\tools\speedtest.exe. Ongoing results will use the max speed, not average.
Download and install using our plugin installer!
V 1.3 Changes
New to LabTech. How do I install plugins like this one? I have not figured that out just yet. Thanks
Charles, open up LabTech as a super admin and click the Help menu item, then plugin manager. You can then add a plugin. Once added, make sure it’s checked, which enables it. Close the plugin manager, re-open and confirm it’s checked. Then you should be able to use it as normal.
Thanks for the reply. I have speedtest installed. I see the tab at the location. I also have the enable speedtest checkbox at the system level. I am unable to determine how the speedtest actually gets kicked off. I looked through scripts and commands at the location level with no success. What did I miss?
There is a script included in the zip file that you want to import (via tools->import->LT XML Expansion) and then schedule to run against a specific group of computers that you want the speedtest to run on. The way that we use it in our environment is to open the group Service Plans\Windows Servers\Server Roles\Windows Servers Core Services\Domain Controllers, go to schedule scripts and schedule the script to occur daily at the desired time. This allows us to get a proper speedtest for all locations without bombarding every server/workstation.
Hope that helps!
Thanks for this…works great for average speed but I can’t get it to work for the max speed.
I downloaded the newer .exe which was named speedtest-32.exe, renamed it speedtestmax.exe and made a copy of your script and changed all references to the exe. It runs and returns results in the script window but they don’t make it to the speedtest plugin. I’ve also tested simply replacing the normal speedtest.exe and using the original script but had the same result.
Sean, Try running the command from the script manually against this EXE to see what the results are. The command is “speedtest.exe -r” and it should return something like this:
1187|Nefcom Internet(Macclenny, FL,United States)|61.34|39020|2948
Let me know what kind of output you’re getting.
Further to Sean’s post, I get the same issue. Looks like the format is different?
2015-03-24 18:27:15.7812023 +1300 NZDT|2382|Woosh Wireless(Auckland,New Zealand)|3.39|69639|45345
speedtest-32.exe – Version: 0.09 – debug
I believe the format changed, and the script was never updated. I updated the script, and it can be found here:
I installed the plugin (thansk for it BTW), everything is checked at the plug-in manager level. On the computer level, if I open the script tab I can see some results, but the the speedtest tab is empty. Any idea ?
Philippe, can you check the client level to see if results show up? Afterward, check the computer level. If that doesn’t work, shoot me an email and I’ll be glad to help.
I checked and I don’t have Speedtest at the client level, I have the tab at the location and the computer level thought.
But both tabs are empty.
For the record, I’m on the cloud version of Labtech.
thanks for your help
[…] We’ve updated the SpeedTest.net plugin to add a client tab (as requested) and reduced some code to make it a bit more efficient. You can get it here! […]
I’m having trouble with this plugin too, turns out it failed to installed the speedtest.exe as I had a non default drive map for the LTShare, but I installed the new speedtest.exe, deleted and updated the script from the dropbox copy on here, but whenever I open a tab I get “there was an error retrieving information, sorry”
That error indicates that there was a problem reading from the database. Can you try the following:
-Uninstall the plugin
-Reinstall the plugin
-Restart the database agent
-Run the speedtest script on a machine
-Check for results
If this doesn’t work, feel free to contact me at email@example.com and I’ll be glad to help.
Also note that the speedtest.exe file has been problematic for a while with varying outputs and such. I am researching an alternative solution and hope to have a new speed test type plugin in the near future.
I’m the author of speedtest here. I noticed a few comments about problematic output. This is a opensource program that i work on in my free time and i’m happy to take suggestions and bug reports on github. https://github.com/zpeters/speedtest
Thanks, glad you found it useful.
Hi Tim, I am having a few issues with this plugin, I have installed the plugin and the script
The Script runs manually but doesn’t update the Speedtest tab. error displayed:
“There was an error retrieveing information. Sorry.”
I have followed everything listed above. can you help. I can email you if thats any good?
Please email firstname.lastname@example.org. We’ll get it figured out.
We have speedtest installed and working great. Is there a way to get the graph to show the results over a longer period than a day?
The graph will show all results that are in the list above it, and that list is accumulated from all results in the database for the given server/location. By default, the script will delete and results > 60 days old. Can you check the SQL query on line 12 of the script to make sure yours hasn’t been changed to something else?
Speedtest version: v0.8.4-d
Output format has changed. The first column returned is now a timestamp.
To confirm this is the output you are seeing when using the “-r” option. I believe this has been the default since at least April.
Did you notice something that has changed recently? If you suspect a bug or unintended change please let me know.
I realized I didn’t update the script. So, I’ve done that.
The recorded output on the speedtest tab was still not reporting correctly. It turned out the testing agent couldn’t get to the speedtest servers.
1) The ISP recently enabled ipv6 support and was defaulting to that.
2) The test servers that speedtest automatically chose were seemingly being blocked. Telus network trying to connect to a Shaw speedtest server did not work. They are competitors.
So, everything is working, this instance turned out to be environmental.
So after re-importing the script\xml, the tabs were still not reporting the correct info.
I had to modify the script to use some string functions to omit the date column from the speedtest output prior to the sql execute function.
Thanks for the update. I’m going to revisit this plugin this week and see what I can do.
hello, i noob of this,, i installed the .dll but when i try to run the script, it isnt appear. can help me?
Did you import the xml script file via tools->import->LT XML Expansion?
i forget it but i try to import it and said me that item already exist.
Installed it through the general installer. first it didn’t download the speedtest.exe. I had to do that manually.
The script seems to output speed, but the tab isn’t showing anything. Do i need to do something else?
Had to change the SQL insert to :
INSERT INTO plugin_speedtest
(locationid,computerid,DATE, serverid,servername,ping,download,upload) VALUES
(2,5134,”2016-03-01 10:19:02 +0100″,”2438″,”INTERACTIVE 3D B.V.(Rotterdam,Netherlands)”,”4.00″,”73879″,”2484531″)
so that it would insert the right date (instead of NOW()).