pub struct PeerMetrics {
pub peer_id: String,
pub rtt_ms: f64,
pub bandwidth_bps: f64,
pub uptime_fraction: f64,
pub success_rate: f64,
pub gossip_delivery_rate: f64,
pub routing_success_rate: f64,
pub last_updated: u64,
}Expand description
Raw observations for a single peer at a point in time.
Fields§
§peer_id: StringStable identifier for the peer.
rtt_ms: f64Round-trip time in milliseconds.
bandwidth_bps: f64Measured bandwidth in bits per second.
uptime_fraction: f64Historical uptime as a fraction in [0, 1].
success_rate: f64Fraction of protocol operations that succeeded, in [0, 1].
gossip_delivery_rate: f64Fraction of gossip messages successfully delivered, in [0, 1].
routing_success_rate: f64Fraction of routing operations that succeeded, in [0, 1].
last_updated: u64Epoch millisecond timestamp of the last observation.
Trait Implementations§
Source§impl Clone for PeerMetrics
impl Clone for PeerMetrics
Source§fn clone(&self) -> PeerMetrics
fn clone(&self) -> PeerMetrics
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for PeerMetrics
impl RefUnwindSafe for PeerMetrics
impl Send for PeerMetrics
impl Sync for PeerMetrics
impl Unpin for PeerMetrics
impl UnsafeUnpin for PeerMetrics
impl UnwindSafe for PeerMetrics
Blanket Implementations§
impl<T> Allocation for T
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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