A lightweight system monitoring daemon written in Rust.
- CPU: Usage, frequencies, and CPU states (user, system, idle, iowait, etc.)
- Memory: RAM and Swap usage
- Disk: I/O throughput/latency and storage space
- Network: Traiffic and connection states
- System: Load average, uptime, temperatures, and interrupts
- GPU: NVIDIA GPU metrics (fan speed, temp, power, VRAM) via NVML
-
Build and run
cargo build --release ./target/release/hydromon
-
Configuration On the first run, it will automatically generate a
hydromon.tomlconfig file by detecting your current hardware (disks, network interfaces, temp sensors, etc.). You can edit this file to enable or disable specific metrics. (Check outhydromon.toml.templatefor an example). -
Data Metrics are stored in
hydromon.db(SQLite) in the same directory. You can easily query the data:sqlite3 hydromon.db "SELECT * FROM sys_summary ORDER BY timestamp DESC LIMIT 5;"
See the LICENSE file for details.