CLI & Configuration

Commands, flags, and TOML configuration reference.

Commands

Agent default mode

$sudo rezolus <CONFIG>

Collect metrics via eBPF. Requires root. Listens on 0.0.0.0:4241.

Exporter

$rezolus exporter <CONFIG>

Pull from agent, expose Prometheus metrics on :4242.

Recorder

$rezolus record [OPTIONS] <URL> <OUTPUT>
-i, --interval <INTERVAL> Collection interval [default: 1s]
-d, --duration <DURATION> Collection duration
-f, --format <FORMAT> parquet|raw [default: parquet]
-v, --verbose Increase verbosity (stackable)
# Record 30s at 100ms intervals
$rezolus record -i 100ms -d 30s http://localhost:4241 output.parquet

Hindsight

$rezolus hindsight <CONFIG>

Rolling ring buffer. Send SIGHUP to trigger snapshot.

Viewer

$rezolus view [OPTIONS] <INPUT> [LISTEN]
-v, --verbose Increase verbosity
# View a recording
$rezolus view output.parquet
# View live agent
$rezolus view http://localhost:4241

MCP Server

$rezolus mcp [SUBCOMMAND]
analyze-correlation <FILE> <Q1> <Q2>
describe-recording <FILE>
describe-metrics <FILE>
detect-anomalies <FILE> [QUERY]
query <FILE> <QUERY>

Configuration

Each mode uses a TOML config file. Examples are in the config/ directory.

Agent

config/agent.toml
# General settings
[general]
listen = "0.0.0.0:4241"
# Logging
[log]
level = "info" # error | warn | info | debug | trace
# Scheduler tuning
[scheduler]
policy = "normal" # normal | round_robin | fifo
# Default for all samplers
[defaults]
enabled = true
# Per-sampler overrides
[samplers.cpu_usage]
enabled = true
[samplers.scheduler_runqueue]
enabled = true

Exporter

config/exporter.toml
[general]
listen = "0.0.0.0:4242"
source = "http://127.0.0.1:4241"
[prometheus]
histogram = "summary" # summary | histogram

Hindsight

config/hindsight.toml
[general]
interval = "1s"
duration = "1h"
source = "http://127.0.0.1:4241"
output = "/var/lib/rezolus/hindsight.parquet"
listen = "0.0.0.0:4242" # optional HTTP API