server-spy classifies your experiment processes with a simple name or regex filter, then records everything that happens around them
CPU overload, RAM exhaustion, disk I/O bottlenecks, scheduler waiting times.
How CPU and memory are split between your workers and everything else.
One row per distinct parameter combination you are running: wall time, CPU time, wait, peak RSS, PSI stall penalty.
Which users on the machine consumed resources during your run and the exact processes behind it.
The daemon keeps recording in the background. Close the TUI, come back later, attach again.
Snapshots in plain CSV.
A single self-contained Linux binary. No runtime dependencies. Installable on user-level — no sudo required.
| Platform | Command | Details |
|---|---|---|
| Debian / Ubuntu | curl -fsSL https://lennart-rth.github.io/server-spy/install-apt.sh | sudo sh | apt repository |
| Nix / NixOS | nix run github:lennart-rth/server-spy | |
| Fedora / RHEL | rpm -Uvh server-spy-<ver>-1.x86_64.rpm | download from GitHub releases |
| crates.io | cargo install server-spy | |
| static binary | server-spy-<ver>-x86_64-unknown-linux-musl.tar.gz | download from GitHub releases |
f, to filter for your experiment runs using regex or simple matching.| f | update the worker filter (with live preview) |
| s / l | save / load snapshots to disk |
| q | terminate - stop the background daemon and exit |
| d | detach - exit, the daemon keeps recording |
| r | restart recording |
| t | stealth mode - rename the processes so ps/top show something innocuous for others |