Auto internet speed tester and logger using speedtest-net and firebase
npm install speedy-loggerAll configuration options can be found in ``config.json`.
- `dbConfig` object contains usual settings for database and auth only.`
- testConfig` object contains`
- testTime` property which sets the maximum amount of time the test will run. Recommended time is 20000ms as this provides most stable results.`
- testsLocation` property defines where test data will be stored relative to your firebase root. Default is ` your_firebase_root/tests``
- errorsLocation` property defines where test data will be stored relative to your firebase root. Default is ` your_firebase_root/errors``
- testInterval` how often should the test be run, cannot be smaller than testTime or larger than 2147483647ms. Default is 3600000 ms.`
- retryInterval` in the event of a test failure i.e. no connectivity how often should retries be made. Default is 60000 ms.
speeds`:
- `download`: download bandwidth in megabits per second
- `upload`: upload bandwidth in megabits per second
- `originalDownload`: unadjusted download bandwidth in bytes per second
- `originalUpload`: unadjusted upload bandwidth in bytes per second -
`client`:
- `ip`: ip of client
- `lat`: latitude of client
- `lon`: longitude of client
- `isp`: client's isp
- `isprating`: some kind of rating
- `rating`: another rating, which is always 0 it seems
- `ispdlavg`: avg download speed by all users of this isp in Mbps
- `ispulavg`: same for upload
- `server`:
- `host`: test server url
- `lat`: latitude of server
- `lon`: longitude of something
- `location`: name of a location, usually a city, but can be anything
- `country`: name of the country
- `cc`: country code
- `sponsor`: who pays for the test server
- `distance`: distance from client to server (SI)
- `distanceMi`: distance from client to server (Imperial)
- `ping`: how long it took to download a small file from the server, in ms
- `id``: the id of the server