pub struct LatencyStats {
pub min_us: u64,
pub max_us: u64,
pub avg_us: u64,
pub p50_us: u64,
pub p90_us: u64,
pub p95_us: u64,
pub p99_us: u64,
pub count: u64,
pub stddev_us: u64,
}Expand description
Latency statistics with percentile calculations.
Fields§
§min_us: u64Minimum latency in microseconds.
max_us: u64Maximum latency in microseconds.
avg_us: u64Average latency in microseconds.
p50_us: u64Median (P50) latency in microseconds.
p90_us: u64P90 latency in microseconds.
p95_us: u64P95 latency in microseconds.
p99_us: u64P99 latency in microseconds.
count: u64Sample count.
stddev_us: u64Standard deviation in microseconds.
Implementations§
Source§impl LatencyStats
impl LatencyStats
Sourcepub fn from_samples(samples: &[Duration]) -> LatencyStats
pub fn from_samples(samples: &[Duration]) -> LatencyStats
Calculate statistics from duration samples.
Sourcepub fn is_latency_high(&self, threshold_us: u64) -> bool
pub fn is_latency_high(&self, threshold_us: u64) -> bool
Check if the latency statistics indicate a performance issue.
Returns true if P99 latency exceeds the threshold.
Trait Implementations§
Source§impl Clone for LatencyStats
impl Clone for LatencyStats
Source§fn clone(&self) -> LatencyStats
fn clone(&self) -> LatencyStats
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 LatencyStats
impl Debug for LatencyStats
Source§impl Default for LatencyStats
impl Default for LatencyStats
Source§fn default() -> LatencyStats
fn default() -> LatencyStats
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for LatencyStats
impl<'de> Deserialize<'de> for LatencyStats
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<LatencyStats, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<LatencyStats, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for LatencyStats
impl Serialize for LatencyStats
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for LatencyStats
impl RefUnwindSafe for LatencyStats
impl Send for LatencyStats
impl Sync for LatencyStats
impl Unpin for LatencyStats
impl UnwindSafe for LatencyStats
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
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