pub struct ChannelMetrics {
pub sent: u64,
pub received: u64,
pub buffered: u64,
pub send_waits: u64,
pub recv_waits: u64,
pub total_send_wait_time: Duration,
pub total_recv_wait_time: Duration,
pub closed: bool,
}Expand description
Metrics for a tracked channel
Fields§
§sent: u64Total messages sent
received: u64Total messages received
buffered: u64Messages currently buffered (approximate)
send_waits: u64Number of times send blocked waiting for capacity
recv_waits: u64Number of times recv blocked waiting for messages
total_send_wait_time: DurationTotal time spent waiting to send
total_recv_wait_time: DurationTotal time spent waiting to receive
closed: boolChannel closed
Implementations§
Source§impl ChannelMetrics
impl ChannelMetrics
Sourcepub fn send_block_rate(&self) -> f64
pub fn send_block_rate(&self) -> f64
Calculate the send utilization (how often sends block)
Sourcepub fn recv_block_rate(&self) -> f64
pub fn recv_block_rate(&self) -> f64
Calculate the receive utilization (how often recvs block)
Trait Implementations§
Source§impl Clone for ChannelMetrics
impl Clone for ChannelMetrics
Source§fn clone(&self) -> ChannelMetrics
fn clone(&self) -> ChannelMetrics
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 ChannelMetrics
impl Debug for ChannelMetrics
Source§impl Default for ChannelMetrics
impl Default for ChannelMetrics
Source§fn default() -> ChannelMetrics
fn default() -> ChannelMetrics
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for ChannelMetrics
impl RefUnwindSafe for ChannelMetrics
impl Send for ChannelMetrics
impl Sync for ChannelMetrics
impl Unpin for ChannelMetrics
impl UnwindSafe for ChannelMetrics
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> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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