pub struct PeerDetail {
pub node_id: String,
pub class: PeerClass,
pub verified: bool,
pub licensed: bool,
pub connected_at: DateTime<Utc>,
pub heartbeat: Option<HeartbeatState>,
pub last_seen: Option<SystemTime>,
pub rtt_ms: Option<f64>,
pub missed_pongs: Option<u32>,
pub load: Option<LoadSample>,
}Expand description
What MeshRuntime::peer_details reports for one connected peer.
Fields§
§node_id: StringRemote node identifier.
class: PeerClassAdmitted class of the connection.
verified: boolAdmission verified the node id.
licensed: boolVerified and class node (see MeshRuntime::peer_licensed).
connected_at: DateTime<Utc>When the connection was established.
heartbeat: Option<HeartbeatState>Heartbeat tracker’s view, when discovery is attached and tracks it.
last_seen: Option<SystemTime>Last counted liveness pong from this peer (real liveness), when the liveness service runs and the peer has answered.
rtt_ms: Option<f64>Smoothed ping round-trip time in milliseconds, same condition.
missed_pongs: Option<u32>Pings that timed out since the last counted pong.
load: Option<LoadSample>Load the peer attached to its last pong (peer-claimed, unsigned).
Trait Implementations§
Source§impl Clone for PeerDetail
impl Clone for PeerDetail
Auto Trait Implementations§
impl Freeze for PeerDetail
impl RefUnwindSafe for PeerDetail
impl Send for PeerDetail
impl Sync for PeerDetail
impl Unpin for PeerDetail
impl UnsafeUnpin for PeerDetail
impl UnwindSafe for PeerDetail
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