denet: a streaming process monitor
denet /de.net/ v. 1. Turkish: to monitor, to supervise, to audit. 2. to track metrics of a running process.
Denet is a lightweight streaming process monitor. It tracks CPU, memory, I/O, and threads for a running process (and its children), with adaptive sampling and optional GPU / eBPF support.
Installation
Optional features for the Rust binary:
Usage
# Run a command and monitor it
# Attach to an existing process
# Save metrics as JSONL
CPU usage follows the top convention: 100% = one fully utilized core, so a 4-core workload shows 400%.
Sampling starts at 100 ms and ramps up to 1 s after 10 s of runtime (adaptive). Override with -i / -m:
Further reading
| Topic | Doc |
|---|---|
Python API (ProcessMonitor, execute_with_monitoring, analysis) |
docs/python-api.md |
| GPU monitoring | docs/gpu.md |
| eBPF profiling (off-CPU, syscall tracking) | docs/ebpf.md |
| Disk I/O metrics and how to interpret them | docs/disk-io.md |
| Output data format | docs/data-format.md |
| Development setup | docs/dev.md |
License
GPL-3