pub struct CircuitMetrics {
pub state: CircuitBreakerState,
pub total_requests: u64,
pub successful_requests: u64,
pub failed_requests: u64,
pub rejected_requests: u64,
pub timeout_requests: u64,
pub consecutive_failures: u32,
pub consecutive_successes: u32,
pub last_error_timestamp: Option<SystemTime>,
pub last_transition_timestamp: Option<SystemTime>,
pub failure_rate_in_window: Option<f64>,
pub slow_call_rate_in_window: Option<f64>,
}
Expand description
Metrics collected by the circuit breaker
Fields§
§state: CircuitBreakerState
Current state of the circuit breaker
total_requests: u64
Total number of requests processed by the circuit breaker
successful_requests: u64
Number of successful requests
failed_requests: u64
Number of failed requests
rejected_requests: u64
Number of requests rejected due to circuit breaker being open
timeout_requests: u64
Number of requests that timed out
consecutive_failures: u32
Current count of consecutive failures
consecutive_successes: u32
Current count of consecutive successes
last_error_timestamp: Option<SystemTime>
Timestamp of the last error that occurred
last_transition_timestamp: Option<SystemTime>
Timestamp of the last state transition
failure_rate_in_window: Option<f64>
Current failure rate calculated over the sliding window (0.0 to 1.0)
slow_call_rate_in_window: Option<f64>
Current rate of slow calls calculated over the sliding window (0.0 to 1.0)
Trait Implementations§
Source§impl Clone for CircuitMetrics
impl Clone for CircuitMetrics
Source§fn clone(&self) -> CircuitMetrics
fn clone(&self) -> CircuitMetrics
Returns a duplicate of the value. Read more
1.0.0 · 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 CircuitMetrics
impl Debug for CircuitMetrics
Source§impl Default for CircuitMetrics
impl Default for CircuitMetrics
Source§fn default() -> CircuitMetrics
fn default() -> CircuitMetrics
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for CircuitMetrics
impl RefUnwindSafe for CircuitMetrics
impl Send for CircuitMetrics
impl Sync for CircuitMetrics
impl Unpin for CircuitMetrics
impl UnwindSafe for CircuitMetrics
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
Mutably borrows from an owned value. Read more