A lightweight command-line tool for testing connectivity to web sources over various protocols (HTTPS, DNS, etc).
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
Connectivity Tool CLI
Welcome to the Connectivity Tool CLI, a command-line interface for network connectivity operations.
📦 Features
With the Connectivity Tool CLI, you can perform the following operations:
- Ping - Check the reachability of a host / URL
- Performance - Check the performance of a URL (latency download/upload bandwidth)
- Deviation - Trace deviations of the response time of a host / URL
🌐 Supported Protocols
- DNS
- HTTPS
- HTTP
📋 Requirements
Python 3.10 or Docker
⬇️ CLI Download
To start using this CLI, install it via PIP (PyPi registry) as a global python command
pip install connectivity_tool
Note: The CLI also available as a Docker image, see Docker Hub For more information, see the Docker section
🚀 Getting started
Before starting, run the help command to understand how to pass the operation's parameters and payload with all the available options.
connectivity_tool --help
📚 Usage Examples
⚡ Direct params
connectivity_tool -p DNS -d yahoo.com
📂 Test suite path
connectivity_tool --suite-file ./suite.yaml
The file structure should be as follows:
suite:
- protocol: DNS
domain: "yahoo.com"
- protocol: HTTP
url: "http://www.google.com"
- protocol: HTTPS
url: "https://www.facebook.com"
latency_threshold_deviation: # Optional for HTTP/HTTPS only - default is 60 seconds
value: 1 # Amount of units
unit: Millisecond # Unit of the value (e.g. Millisecond, Second, Minute)
test_upload_bandwidth: true # Optional for HTTP/HTTPS only - default is false
test_download_bandwidth: true # Optional for HTTP/HTTPS only - default is false
The json format is also supported.
{
"suite": [
{
"protocol": "DNS",
"domain": "yahoo.com"
},
{
"protocol": "HTTP",
"url": "http://www.google.com"
},
{
"protocol": "HTTPS",
"url": "https://www.facebook.com",
"latency_threshold_deviation": {
"value": 1,
"unit": "Millisecond"
},
"test_upload_bandwidth": true,
"test_download_bandwidth": true
}
]
}
🗃️ Results Store
Every operation result will be stored in a jsonl local file.
Run connectivity_tool --output-store 5 to print to stdout the last 5 result/s.
The store file is ./store_data/conn_tool_store.jsonl as default and can be changed by --store flag.
For Docker see the Docker section
🔍 Troubleshooting and logging
The full version and build info of the SDK is available by --info see example:
connectivity_tool --info
Connectivity Tool Cli allows to print verbose logs.
connectivity_tool --verbos
🐞 Report Bug
In case of an issue or a bug found in the CLI, please open an issue
🛠️ Development & Contribution
See the Development section for more information
📝 License
The Connectivity Tool CLI is licensed under the MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file connectivity_tool-1.0.8.tar.gz.
File metadata
- Download URL: connectivity_tool-1.0.8.tar.gz
- Upload date:
- Size: 16.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b1869a3b5c653a34439ad7f56c3dcd4ce93950d3a2afaebbb9ba010cd7f838eb
|
|
| MD5 |
3078ae677361f7e9b65bb6f6f671d6c0
|
|
| BLAKE2b-256 |
38882e57663000c08739300b5e24cd7f7107babb439e3f9aaa3cd950084cca88
|