pub struct CircuitStats {
pub state: String,
pub failure_count: u32,
pub success_count: u32,
pub consecutive_failures: u32,
pub consecutive_successes: u32,
pub total_calls: u64,
pub rejected_calls: u64,
pub last_opened_at: Option<u64>,
pub last_closed_at: Option<u64>,
}Expand description
Snapshot of statistics for a single peer’s circuit breaker.
Fields§
§state: StringHuman-readable current state: "Closed", "Open", or "HalfOpen".
failure_count: u32Number of failures recorded in the sliding window.
success_count: u32Number of successes recorded in the sliding window.
consecutive_failures: u32Current run of consecutive failures (resets on any success).
consecutive_successes: u32Current run of consecutive successes (only meaningful in HalfOpen).
total_calls: u64Total calls ever attempted (including rejected ones).
rejected_calls: u64Calls rejected because the circuit was Open (or HalfOpen at capacity).
last_opened_at: Option<u64>Timestamp (ms) of the most recent Open transition.
last_closed_at: Option<u64>Timestamp (ms) of the most recent Closed transition (recovery).
Trait Implementations§
Source§impl Clone for CircuitStats
impl Clone for CircuitStats
Source§fn clone(&self) -> CircuitStats
fn clone(&self) -> CircuitStats
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CircuitStats
impl Debug for CircuitStats
Source§impl Default for CircuitStats
impl Default for CircuitStats
Source§fn default() -> CircuitStats
fn default() -> CircuitStats
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for CircuitStats
impl RefUnwindSafe for CircuitStats
impl Send for CircuitStats
impl Sync for CircuitStats
impl Unpin for CircuitStats
impl UnsafeUnpin for CircuitStats
impl UnwindSafe for CircuitStats
Blanket Implementations§
impl<T> Allocation for T
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>
Converts
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>
Converts
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