cfspeedtest - Unofficial CLI for speed.cloudflare.com
Installation
Install using cargo:
Or download the latest binary release here: cfspeedtest/releases/latest
Usage
> cfspeedtest --help
Unofficial CLI for speed.cloudflare.com
Usage: cfspeedtest [OPTIONS]
Options:
-n, --nr-tests <NR_TESTS>
Number of test runs per payload size. Needs to be at least 4 [default: 10]
--nr-latency-tests <NR_LATENCY_TESTS>
Number of latency tests to run [default: 25]
-m, --max-payload-size <MAX_PAYLOAD_SIZE>
The max payload size in bytes to use [100k, 1m, 10m, 25m or 100m] [default: 25MB]
-o, --output-format <OUTPUT_FORMAT>
Set the output format [csv, json or json-pretty] > This silences all other output to stdout [default: StdOut]
-v, --verbose
Enable verbose output i.e. print boxplots of the measurements
--ipv4
Force usage of IPv4
--ipv6
Force usage of IPv6
-d, --disable-dynamic-max-payload-size
Disables dynamically skipping tests with larger payload sizes if the tests for the previous payload size took longer than 5 seconds
-h, --help
Print help
-V, --version
Print version
Example with json-pretty output:
Development
Logging
Set the log level using the RUST_LOG env var:
RUST_LOG=debug
Release
On GitHub
Release builds are published automatically using github actions. They are triggered when a git tag in the format v[0-9]+.* is pushed.
On crates.io
- Update
cfspeedtestversion inCargo.toml cargo publish --dry-run- Verify contents using
cargo package --list - Upload to crates.io
cargo publish