Skip to main content

Module telemetry

Module telemetry 

Source
Expand description

Telemetry primitives for the Offline Protocol SDK.

This module is the unified observer surface for everything the SDK emits: protocol events, MLS lifecycle events, periodic metrics snapshots, transport-status transitions, structured routing decisions, and device-capability snapshots all flow as TelemetryRecord values through a single TelemetrySink.

Re-exports§

pub use config::MlsVerbosity;
pub use config::TelemetryConfig;
pub use device::DeviceCapabilitySnapshot;
pub use device::CHANGED_BATTERY;
pub use device::CHANGED_CHARGING;
pub use device::CHANGED_RELAY_ROLE;
pub use metrics_snapshot::MetricsFrame;
pub use pipe::AppState;
pub use pipe::TelemetryHost;
pub use pipe::TelemetryOs;
pub use pipe::TelemetryPipe;
pub use pipe::TelemetryStats;
pub use record::TelemetryRecord;
pub use routing::RoutingDecision;
pub use routing::RoutingPhase;
pub use routing::RoutingReasonCode;
pub use sampling::CategorySampler;
pub use sink::NoopTelemetrySink;
pub use sink::TelemetrySink;
pub use transport_state::TransportStateEvent;

Modules§

config
Runtime telemetry configuration.
device
Push-based snapshots of local device capability changes.
metrics_snapshot
Periodic snapshot of protocol-wide counters and per-transport metrics.
pipe
The telemetry pipe: the client half of the hosted telemetry product, living in the core so every binding ships it from one implementation.
record
Unified telemetry record taxonomy.
routing
Structured superset of the legacy Event::Dors* events.
sampling
Generic fixed-window rate limiter for event sampling.
sink
Cross-cutting telemetry sink trait.
transport_state
Push-based TransportStatus transition records.