pub struct LatencyHistogram { /* private fields */ }Expand description
A ring-buffer latency histogram for p50/p99 percentile computation.
Stores up to LATENCY_HISTOGRAM_CAPACITY recent samples. Percentiles
are computed by copying and sorting the live samples on demand (this is
intentional — HDR histogram is overkill for v1.1).
Implementations§
Source§impl LatencyHistogram
impl LatencyHistogram
Sourcepub fn total_recorded(&self) -> u64
pub fn total_recorded(&self) -> u64
Number of samples recorded (lifetime).
Sourcepub fn live_samples(&self) -> usize
pub fn live_samples(&self) -> usize
Number of live samples currently in the ring buffer.
Sourcepub fn p50(&self) -> Duration
pub fn p50(&self) -> Duration
Compute the p50 (median) latency. Returns Duration::ZERO if empty.
Sourcepub fn percentile(&self, p: f64) -> Duration
pub fn percentile(&self, p: f64) -> Duration
Compute an arbitrary percentile in [0.0, 1.0].
Trait Implementations§
Source§impl Clone for LatencyHistogram
impl Clone for LatencyHistogram
Source§fn clone(&self) -> LatencyHistogram
fn clone(&self) -> LatencyHistogram
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 LatencyHistogram
impl Debug for LatencyHistogram
Auto Trait Implementations§
impl Freeze for LatencyHistogram
impl RefUnwindSafe for LatencyHistogram
impl Send for LatencyHistogram
impl Sync for LatencyHistogram
impl Unpin for LatencyHistogram
impl UnsafeUnpin for LatencyHistogram
impl UnwindSafe for LatencyHistogram
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.