| Crates.io | data-guardian |
| lib.rs | data-guardian |
| version | 1.0.2 |
| created_at | 2025-02-21 01:36:32.260598+00 |
| updated_at | 2025-03-26 19:47:16.84498+00 |
| description | System utility that monitors the disk I/O usage of applications running on your computer |
| homepage | https://github.com/xosnrdev/data-guardian?tab=readme-ov-file |
| repository | https://github.com/xosnrdev/data-guardian |
| max_upload_size | |
| id | 1563423 |
| size | 124,201 |
Data Guardian is a system utility that monitors the disk I/O usage of applications running on your computer. It tracks read/write operations and alerts you when applications exceed a configured data threshold.
libdbus-1-dev (for notifications via notify-rust)# Clone the repository
git clone https://github.com/xosnrdev/data-guardian.git
cd data-guardian
# Build and install
cargo install --path .
cargo install data-guardian
see https://github.com/xosnrdev/data-guardian/releases
Start the service:
dg
The service will run in the background and monitor disk I/O usage of all processes
Receive notifications when applications exceed configured thresholds
The service can be configured in three ways (in order of precedence):
Environment variables:
DATAGUARDIAN_DATA_LIMIT=1073741824
DATAGUARDIAN_CHECK_INTERVAL_SECONDS=60
DATAGUARDIAN_PERSISTENCE_INTERVAL_SECONDS=300
User configuration file at:
~/.config/DataGuardian/config.toml~/Library/Application Support/DataGuardian/config.toml%APPDATA%\DataGuardian\config.tomlExample config.toml:
# Data limit in bytes before triggering alerts
data_limit = 1073741824 # 1 GB
# How often to check process data usage (in seconds)
check_interval_seconds = 60
# How often to save usage data to disk (in seconds)
persistence_interval_seconds = 300 # 5 minutes
Default values:
data_limit: 1 GB (1073741824 bytes)check_interval_seconds: 60 secondspersistence_interval_seconds: 300 seconds (5 minutes)DATAGUARDIAN_DATA_LIMIT: Override data limit (minimum: 1MB)DATAGUARDIAN_CHECK_INTERVAL_SECONDS: Override check interval (minimum: 1 second)DATAGUARDIAN_PERSISTENCE_INTERVAL_SECONDS: Override persistence interval (minimum: 10 seconds)RUST_LOG: Set logging level (error, warn, info, debug, trace)