pub trait SessionMetrics: Send + Sync {
// Required methods
fn record_session_start(&self);
fn record_session(&self, report: &SessionReport);
fn record_route_decision(&self, rule: &str, action: &str, outcome: &str);
fn record_upstream_open(&self, protocol: &str, outcome: &str);
fn record_upstream_failure(&self, protocol: &str, reason: &str);
fn record_auth_failure(&self);
// Provided methods
fn record_platform_capability_check_failure(&self) { ... }
fn record_unix_listener_connection_accepted(&self) { ... }
fn record_reload(&self, _success: bool) { ... }
fn set_config_generation(&self, _generation: u64) { ... }
fn record_udp_association_created(&self) { ... }
fn render_prometheus(&self) -> String { ... }
}Expand description
Trait for recording session metrics. Implemented by external crates.
Required Methods§
fn record_session_start(&self)
fn record_session(&self, report: &SessionReport)
fn record_route_decision(&self, rule: &str, action: &str, outcome: &str)
fn record_upstream_open(&self, protocol: &str, outcome: &str)
fn record_upstream_failure(&self, protocol: &str, reason: &str)
fn record_auth_failure(&self)
Provided Methods§
fn record_platform_capability_check_failure(&self)
fn record_unix_listener_connection_accepted(&self)
fn record_reload(&self, _success: bool)
fn set_config_generation(&self, _generation: u64)
fn record_udp_association_created(&self)
fn render_prometheus(&self) -> String
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".