AutomoxAutomox

Bandwidth Test via SpeedTest CLI

gpearl
May 3, 2022 at 9:31 pm UTC
#Windows#Worklets

With work from home and troubleshooting of remote networks the team I am on constantly are getting reports of things “being slow”.  Many times the issue comes down to poor WI-FI connection or an internet issues on the end user side.  Who of us has not heard “But Netflix works just fine”….😣

I am using the basic Health Worklet but wanted to create a new worklet that provides more information.  

In came SpeedTest.net CLI using the following evaluation code and remediation code I am able to get live speed test for end users.  Download the zip file - Extract and upload the .exe into the worklet.

 

Note: This is windows centric

Evaluation Code:

exit 1

Remediation Code:

&'.\speedtest.exe' --progress=no --accept-license | Where-Object {$_.trim() -ne "" }

 

--progress= no live update screen just final results

--accept-license = seems to be an undocumented flag to accept the license on initial run of exe

The $.trim() -ne””  is just to remove blank lines in the output.

 

Please provide some feedback.

This discussion is archived and closed to replies. Continue it in the Automox Community Slack.

Discuss on Slack

Replies (3)

jack.smithMay 10, 2022
#1

That’s really cool. More information over a period of time I think would provide a data set that might provide the context the end user needs to understanding their interpretation of slow. 

 

Here is a worklet where I took the output from netsh wlan show interfaces every 30 minutes for 48 hours and dropped it into a CSV file 

 

David_MitchellMay 11, 2022
#2

I like this idea. I added a few more lines of diagnostics to help spot issues. 

 

powershell4 lines
$results = .\speedtest.exe --progress=no --accept-license | Where-Object {$_.trim() -ne ""}
$results += ping -l 1000 -f -n 100 google.com | Select-String -NotMatch -Pattern 'Reply'
$results += ipconfig /all
Write-output $results

 

MattEWGOctober 10, 2022
#3

Like this allot although I do not appear to be getting any output from the upload or download reporting back