Skip to main content

Crate rigtop_core

Crate rigtop_core 

Source
Expand description

Data collection core shared by the rigtop TUI and GUI.

  • snapshot: the serializable measurement types exchanged between data sources and front-ends (also the wire format for remote monitoring).
  • source: the DataSource trait and the LocalSource implementation.
  • config: user configuration (sensor labels, SMART directory).
  • system, gpu, smart, linux: the individual collectors.
  • agent, remote: remote monitoring over SSH (rigtop --agent and the remote::RemoteSource that talks to it).
  • demo: made-up hosts for trying the interface (--demo).
  • worker, view, [format]: front-end helpers shared by the TUI and the GUI (background polling thread, process table logic, units).

Re-exports§

pub use config::Config;
pub use snapshot::Snapshot;
pub use source::DataSource;
pub use source::LocalSource;
pub use source::MIN_POLL_INTERVAL;
pub use source::ProcessSignal;
pub use source::SourceError;

Modules§

agent
The agent protocol for remote monitoring, and the agent loop itself.
config
User configuration (config.toml).
demo
Made-up hosts for trying the interface and taking screenshots without real hardware (rigtop --demo, rigtop-gui --demo): a workstation training on two GPUs, a laptop on battery and a NAS that needs attention.
format
Compact human-readable formatting for narrow terminal cells.
gpu
NVIDIA GPU statistics via NVML.
hosts
The hosts a front-end monitors: this machine plus remote hosts from the configuration and the command line.
linux
Linux-specific readers for /sys and /proc.
remote
A DataSource for a remote host, reached by running rigtop --agent through the system’s ssh (OpenSSH; ssh.exe on Windows).
smart
SMART health from smartctl JSON files.
snapshot
Serializable snapshot of everything rigtop displays.
source
Data sources: anything that can produce Snapshots.
system
Portable statistics via the sysinfo crate: CPU load, memory, processes, network traffic and filesystem capacity.
view
Front-end helpers shared by the TUI and the GUI: graph history, process table sorting/filtering joined with GPU usage, and small naming helpers.
widget
Widgets: small panels shown beside the monitor, for whatever else someone wants on the same screen. A widget is either built in (a large clock) or fed by any command, which rigtop runs periodically and whose output it renders.
worker
Background thread that owns the data source.