https://github.com/facebookincubator/below

A time traveling resource monitor for modern Linux systems

https://github.com/facebookincubator/below

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.2%) to scientific vocabulary
Last synced: 6 months ago · JSON representation

Repository

A time traveling resource monitor for modern Linux systems

Basic Info
  • Host: GitHub
  • Owner: facebookincubator
  • License: apache-2.0
  • Language: Rust
  • Default Branch: main
  • Homepage:
  • Size: 4.92 MB
Statistics
  • Stars: 1,763
  • Watchers: 36
  • Forks: 86
  • Open Issues: 23
  • Releases: 0
Created about 6 years ago · Last pushed 7 months ago
Metadata Files
Readme Contributing License Code of conduct

README.md

Below

Matrix chat CI

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:

shell sudo dnf install below

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

shell 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:

shell sudo apk add below

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

shell 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:

shell sudo emerge sys-process/below

Installing from source

First, install dependencies listed in building.md.

shell $ 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:

shell $ sudo below live

Run recording daemon:

shell $ 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:

shell $ below replay -t "3m ago"

Integration with Prometheus/Grafana

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

See contrib/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.