Usage
After installing NLM, you can start monitoring network latency.
Configuration
Before running NLM, configure your settings in the config.yaml file.
Sample `config.yaml`:
"duration": 10800, # in seconds
"ip_addresses": ["8.8.8.8"],
"ping_interval": 1, # in seconds
"latency_threshold": 200.0, # in ms
"no_aggregation": False,
"no_segmentation": False,
"file": None, # Optional: Specify a ping result file to process
"clear": False, # Set to True to clear all data
"clear_results": False, # Set to True to clear results folder
"clear_plots": False, # Set to True to clear plots folder
"clear_logs": False, # Set to True to clear logs folder
"yes": False, # Set to True to auto-confirm prompts
The config.yaml file is autogenerated the first time that the program is run. It is saved in default directories based on your operating system.
For Linux users: /home/username/.config/network_latency_monitor/config.yaml
For Windows users: %APPDATA%\nlm\config.yaml
For MacOS users: ~/Library/Application Support/nlm/config.yaml
Running the Program
Running from Source
If you have installed from source using poetry, then you can run the program using poetry run.
- To run the program with all default parameters (as obtained from config.yaml):
poetry run nlm
Running from Pip Installation
If you are running the program after installing it through pip, you can run it simply by:
nlm
To view all command-line options and a simple guide, run
nlm --help
This will run the program with default parameters as obtained from config.yaml.
Usage Examples
Monitor two IP addresses for 1 hour with a 2-second interval between pings:
nlm 8.8.8.8 1.1.1.1 --duration 3600 --ping-interval 2
Process an existing ping results file and disable data aggregation:
nlm --file results/ping_results_8.8.8.8.txt --no-aggregation
Clear all data (results, plots, logs) without confirmation:
nlm --clear --yes
Monitor a single IP address with a custom latency threshold:
nlm 8.8.4.4 --latency-threshold 150.0
Regenerate the default
config.yamlfile:nlm --regen-configDisable segmentation of latency plots:
nlm 8.8.8.8 --no-segmentation
Monitor a single IP for 2 hours, with default settings:
nlm 8.8.8.8 --duration 7200
Run the program with default parameters, but no output to the terminal:
nlm -qRun the program with log-level information printed to the terminal:
nlm -vRun the program with debug-level logs printed to the terminal:
nlm -vvClear only the plots folder:
nlm --clear-plots