pub struct PeerHealth {
pub node_id: String,
pub connected: bool,
pub circuit_state: PeerCircuitState,
pub circuit_open: bool,
pub failure_count: u64,
pub millis_since_success: u64,
pub lag_ms: Option<u64>,
pub catching_up: bool,
}Expand description
Health status of a single peer.
Fields§
§node_id: StringPeer’s node ID.
connected: boolWhether the Redis connection is established.
Source: Cached from PeerConnection::is_connected().
circuit_state: PeerCircuitStateCircuit breaker state.
Source: Cached from PeerConnection::circuit_state().
circuit_open: boolWhether the circuit breaker is open (peer temporarily excluded).
Source: Derived from circuit_state == Open.
failure_count: u64Consecutive failure count.
Source: Cached from PeerConnection::failure_count().
millis_since_success: u64Milliseconds since last successful operation.
Source: Cached from PeerConnection::millis_since_success().
0 if never contacted successfully.
lag_ms: Option<u64>Current replication lag in milliseconds (cursor behind stream head).
Source: From hot path lag tracking.
None if not yet measured or peer not connected.
catching_up: boolWhether we’re catching up with this peer’s stream. Source: From hot path state.
Trait Implementations§
Source§impl Clone for PeerHealth
impl Clone for PeerHealth
Source§fn clone(&self) -> PeerHealth
fn clone(&self) -> PeerHealth
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for PeerHealth
impl RefUnwindSafe for PeerHealth
impl Send for PeerHealth
impl Sync for PeerHealth
impl Unpin for PeerHealth
impl UnwindSafe for PeerHealth
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more