server-spy
What it monitors
find out which of your experiments got slowed down and why
server-spy classifies your experiment processes with a simple name or regex filter, then records everything that happens around them
▁▃▆
Live congestion
CPU overload, RAM exhaustion, disk I/O bottlenecks, scheduler waiting times.
▰▱▰
Resource utilization
How CPU and memory are split between your workers and everything else.
▦
Experiment runs
One row per distinct parameter combination you are running: wall time, CPU time, wait, peak RSS, PSI stall penalty.
☰
Who is slowing you down
Which users on the machine consumed resources during your run and the exact processes behind it.
⇄
Detach & reattach
The daemon keeps recording in the background. Close the TUI, come back later, attach again.
⇅
Save & load
Snapshots in plain CSV.
Install
A single self-contained Linux binary. No runtime dependencies. Installable on user-level — no sudo required.
Quick install
$ curl -fsSL https://raw.githubusercontent.com/lennart-rth/server-spy/master/install.sh | shcopy
| 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 |
Quick start
1. Select your experiment processes \- press `f`, to filter for your experiment runs using regex or simple matching. 2. Monitor \- Watch who and what is slowing down your experiments. We classify all your different runs based on their parameters and show for each of them how much they are affected by resource congestions. 3. Detach \- Detach the TUI. server-spy continues to collect the data in the background. You can connect again any time.
| 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 |