pub struct LatencyStats {
pub count: u64,
pub last_ms: u64,
pub min_ms: u64,
pub max_ms: u64,
pub mean_ms: u64,
pub p50_ms: u64,
pub p90_ms: u64,
pub p99_ms: u64,
pub histogram: Vec<LatencyBucket>,
}Expand description
Response-latency distribution for the session so far.
All durations are whole milliseconds. Every field is 0 until the first
turn has been measured (count == 0).
Fields§
§count: u64Number of measured turns.
last_ms: u64Latency of the most recent turn.
min_ms: u64Fastest turn.
max_ms: u64Slowest turn.
mean_ms: u64Mean over all measured turns.
p50_ms: u64Median of the most recent LATENCY_RECENT_WINDOW turns.
p90_ms: u6490th percentile of the most recent LATENCY_RECENT_WINDOW turns.
p99_ms: u6499th percentile of the most recent LATENCY_RECENT_WINDOW turns.
histogram: Vec<LatencyBucket>Full-session histogram, one entry per LATENCY_BUCKETS_MS bound plus
the open top bucket.
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 Display for LatencyStats
impl Display for LatencyStats
Source§impl PartialEq for LatencyStats
impl PartialEq for LatencyStats
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
impl Eq for LatencyStats
impl StructuralPartialEq for LatencyStats
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].