Speedtest Tracker uses the Official Ookla CLI client to execute the speedtest. There a couple of stages the Speedtest Tracker goes through, below explains the process.
1
Started
The Speedtest process is started
2
Checking
The application checks for an internet connection by calling https://icanhazip.com
3
Skipped [Optional]
If you have the SPEEDTEST_SKIP_IPS the test will be marked as skipped as the IP returning during Checking matches your defined IP.
4
Running
The application runs the speedtest by simply running the speedtest command. This command runs the speedtest like another other speedtest and returns the result in json format so the application an easily process it.
If for various reasons the Ookla CLI returns an error, because the defined server was offline for example the tests is marked as failed. As well when the Checking stage fails when there is no internet.
6
Benchmarking
When you have thresholds set this step will evaluate the results against the threshold to determine if the test was healthy or not.
7
Completed
This is the end stage of the process when every step is completed the test is marked as such.