Skip to content

Metrics & Identity

Docs-site note: This page is a short, configuration-focused index over two topics that Vexor documents in full elsewhere: the metrics reporter (Observability) and gossip client identity (Client Identity). Read this page for the shape of each; follow the links for the full detail.

Two pieces of configuration determine how a Vexor node is seen by the outside world: what it reports to the Solana metrics database, and how it identifies itself over gossip. Both matter for the same reason — an independent client's credibility depends on tooling being able to tell what it's looking at.


Metrics — SOLANA_METRICS_CONFIG

Vexor reads the same environment variable, in the same format, that Agave reads:

SOLANA_METRICS_CONFIG="host=<url>,db=<db>,u=<user>,p=<password>"

Set it and Vexor submits to the standard Solana metrics database using Agave's wire format — the same InfluxDB-line-protocol points, the same validator-new/cpu-stats/memory-stats/optimistic_slot measurement set Agave emits, so existing Agave-oriented dashboards plot a Vexor node without modification.

Leave it unset (or give it an invalid value) and metrics are simply off — a node with no metrics configured votes and produces identically to one with metrics healthy. Metrics are strictly additive telemetry, never a liveness dependency.

On top of the Agave-compatible baseline, Vexor emits its own vexor-* measurements — replay throughput (vexor-replay), vote outcomes (vexor-vote-census), shred/repair handling (vexor-tvu), AF_XDP kernel counters (vexor-afxdp, only when AF_XDP is active), process resource usage (vexor-process), and per-mount disk usage (vexor-disk-usage). These ride the same connection automatically — there's no separate switch to flip.

Full detail — wire format, cadence, credentials, the never-crash contract, and every field in every measurement — lives on Observability.


Identity — what Vexor advertises over gossip

Every validator advertises its client software in gossip's ContactInfo record. Vexor currently advertises:

Field Value
Version 0.9.0
Client ID 86
Commit first 8 hex chars of the build's git hash

Because Vexor has not yet registered its client ID in Agave's client_ids.rs registry, tooling that resolves gossip client IDs against that registry — explorers, dashboards, solana gossip-style output — renders Vexor as Unknown(86) rather than a recognized name. That's the honest, expected result of an unregistered ID, not a bug. Registration with upstream (anza-xyz/agave) is in progress — a pull request adding a registered "Vexor" entry to client_ids.rs is drafted, the same path other independent clients have taken to move from Unknown(N) to a named entry.

Vexor's version stays deliberately in the 0.9.x series while pre-production; 1.0.0 is reserved for the declared production-readiness milestone, not a date.

Full detail — the full advertised identity string, why honest identity matters, and the history of what Vexor used to (incorrectly) advertise — lives on Client Identity.


See also