2 releases

0.1.1 Nov 7, 2020
0.1.0 Nov 6, 2020

#616 in Operating systems

Apache-2.0

38KB
912 lines

Below

below is an interactive tool to view and record historical system data. It has support for:

  • information regarding hardware resource utilization
  • viewing the cgroup hierarchy
  • cgroup and process information
  • pressure stall information (PSI)
  • record mode to record system data
  • replay mode to replay historical system data
  • live mode to view live system data
  • dump subcommand to report script-friendly information (eg JSON, CSV, OpenMetrics, etc.)
  • snapshot subcommand to create a replayable snapshot file of historical system data

below does not have support for cgroup1.

The name "below" stems from the fact that the below developers rejected many of atop's design and style decisions.

Demo

Installing

Fedora

below is packaged in Fedora as of Fedora 34, and can be installed with:

sudo dnf install below

Optionally, the systemd service for persistent data collection can also be enabled with:

sudo systemctl enable --now below

Alpine Linux

below is packaged in Alpine Linux - it's available in (upcoming) v3.17+ and Edge. It can be installed with:

sudo apk add below

Optionally, the OpenRC service for persistent data collection can also be enabled with:

sudo rc-service below start
sudo rc-update add below

Gentoo Linux

below is available in the sys-process/below package and can be installed with emerge:

sudo emerge sys-process/below

Installing from source

First, install dependencies listed in building.md.

$ cargo install below
$ below --help

For convenience, we also provide a Dockerfile and pre-built images on Docker Hub. See docker.md for how to use them.

Quickstart

Live view of system:

$ sudo below live

Run recording daemon:

$ sudo cp ~/.cargo/bin/below /bin/below  # if using cargo-install
$ sudo cp etc/below.service /etc/systemd/system
$ sudo systemctl daemon-reload
$ sudo systemctl start below

Replay historical data:

$ below replay -t "3m ago"

Integration with Prometheus/Grafana

below has basic support for Prometheus/Grafana through the dump interface.

See https://github.com/danobi/below-grafana for more details.

Comparison with alternative tools

See comparison.md for a feature comparison with alternative tools.

Contributing

See the CONTRIBUTING file for how to help out.

License

See LICENSE file.

Dependencies

~2.5–5MB
~90K SLoC