pub struct RPCStats {
pub messages_sent: u32,
pub messages_rcvd: u32,
pub questions_in_flight: u32,
pub last_question_ts: Option<Timestamp>,
pub last_seen_ts: Option<Timestamp>,
pub first_consecutive_seen_ts: Option<Timestamp>,
pub failed_to_send: u32,
pub recent_lost_answers_unordered: u32,
pub recent_lost_answers_ordered: u32,
pub answer_unordered: AnswerStats,
pub answer_ordered: AnswerStats,
}Expand description
Statistics for RPC operations performed on a node
Fields§
§messages_sent: u32number of rpcs that have been sent in the total entry time range
messages_rcvd: u32number of rpcs that have been received in the total entry time range
questions_in_flight: u32number of questions issued that have yet to be answered
last_question_ts: Option<Timestamp>when the peer was last questioned (either successfully or not) and we wanted an answer
last_seen_ts: Option<Timestamp>when the peer was last seen for any reason, including when we first attempted to reach out to it
first_consecutive_seen_ts: Option<Timestamp>the timestamp of the first consecutive proof-of-life for this node (an answer or received question)
failed_to_send: u32number of messages that have failed to send or connections dropped since we last successfully sent one
recent_lost_answers_unordered: u32number of answers that have been lost consecutively over an unordered channel
recent_lost_answers_ordered: u32number of answers that have been lost consecutively over an ordered channel
answer_unordered: AnswerStatsunordered rpc answer stats for this peer
answer_ordered: AnswerStatsordered rpc answer stats for this peer
Trait Implementations§
Source§impl<'de> Deserialize<'de> for RPCStats
impl<'de> Deserialize<'de> for RPCStats
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for RPCStats
impl JsonSchema for RPCStats
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreimpl Eq for RPCStats
impl StructuralPartialEq for RPCStats
Auto Trait Implementations§
impl Freeze for RPCStats
impl RefUnwindSafe for RPCStats
impl Send for RPCStats
impl Sync for RPCStats
impl Unpin for RPCStats
impl UnwindSafe for RPCStats
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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>
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>
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