In terminal graphical metrics for your *nix system written in Rust.
- Optional CPU, Memory, Network, and Disk usage charts
- Quick glances at Disk free space, NIC IP addresses, CPU frequency
- A top like process table that includes per process disk usage
- Different chart views (5 minutes, 1 hour, etc)
- Managing processes (signals, nice, etc)
- Saving performance data
- Sensor Temperature charts
- Per process network usage (Linux)
- Messaging about adverse system events, like errors in kernel ring buffer (Linux)
- Docker support
- BSD (OpenBSD/FreeBSD)
- Perhaps Redox OS.
Download one of the compiled releases.
brew tap bvaisvil/zenith brew install zenith
This builds under rustc version >= 1.39.0.
cd zenith cargo build --release
Running with no arguments starts zenith with the default visualizations for CPU, Disk, and Network and a refresh rate of 2000 ms (2 seconds). These can be changed with command line parameters:
zenith [OPTIONS] FLAGS: -h, --help Prints help information -V, --version Prints version information OPTIONS: -c, --cpu-height <INT> Height of CPU/Memory visualization. [default: 10] -d, --disk-height <INT> Height of Disk visualization. [default: 10] -n, --net-height <INT> Height of Network visualization. [default: 10] -p, --process-height <INT> Min Height of Process Table. [default: 8] -r, --refresh-rate <INT> Refresh rate in milliseconds. [default: 2000]
Don't want a section? Remove it by setting the height to 0.
zenith -c 0
Will remove the CPU chart.
Up/down arrow keys move around the process table. Return (enter) will focus on a process. Tab switches the active section. Active sections can be expanded (e) and minimized (m). +/- (or =/-) will zoom in / out all of the charts. Arrow keys (←/→) move forward/backward in time. Back tick (`) resets the chart to current time and max zoom. Using this you can create the layout you want.