pub struct HealthTracker { /* private fields */ }Expand description
Health tracker for providers.
Implementations§
Source§impl HealthTracker
impl HealthTracker
Sourcepub fn new(provider_count: usize, config: HealthTrackerConfig) -> Self
pub fn new(provider_count: usize, config: HealthTrackerConfig) -> Self
Create a tracker for the given number of providers.
Sourcepub fn record_success(&self, provider_index: usize, latency: Duration)
pub fn record_success(&self, provider_index: usize, latency: Duration)
Record a successful request.
Sourcepub fn record_failure(&self, provider_index: usize, latency: Option<Duration>)
pub fn record_failure(&self, provider_index: usize, latency: Option<Duration>)
Record a failed request.
Sourcepub fn metrics(&self, provider_index: usize) -> Option<ProviderMetrics>
pub fn metrics(&self, provider_index: usize) -> Option<ProviderMetrics>
Get metrics for a provider.
Sourcepub fn health(&self, provider_index: usize) -> Option<ProviderHealth>
pub fn health(&self, provider_index: usize) -> Option<ProviderHealth>
Get health for a provider.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for HealthTracker
impl RefUnwindSafe for HealthTracker
impl Send for HealthTracker
impl Sync for HealthTracker
impl Unpin for HealthTracker
impl UnwindSafe for HealthTracker
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