pub struct TreeNode {
pub children: BTreeMap<String, TreeNode>,
pub count: u64,
pub bytes: u64,
pub rate_hz: f64,
pub last_seen: Option<Instant>,
pub subtree_count: u64,
pub subtree_bytes: u64,
pub subtree_rate_hz: f64,
pub subtree_last_seen: Option<Instant>,
pub subtree_keys: usize,
}Expand description
One node of the snapshot: a key chunk, its subtree, and — when a sample has landed exactly here — its stats.
The subtree_* fields are what a collapsed node shows: a UI that can
only report the traffic of keys it happens to have expanded is reporting a
number the user will misread as the total.
Fields§
§children: BTreeMap<String, TreeNode>§count: u64Samples observed at exactly this key (leaf traffic).
bytes: u64§rate_hz: f64§last_seen: Option<Instant>When a sample last landed exactly here.
subtree_count: u64Aggregates over the whole subtree (this node included).
subtree_bytes: u64§subtree_rate_hz: f64§subtree_last_seen: Option<Instant>Most recent sample anywhere in the subtree.
subtree_keys: usizeDistinct keys that have carried traffic in this subtree.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TreeNode
impl RefUnwindSafe for TreeNode
impl Send for TreeNode
impl Sync for TreeNode
impl Unpin for TreeNode
impl UnsafeUnpin for TreeNode
impl UnwindSafe for TreeNode
Blanket Implementations§
Source§impl<Source> AccessAs for Source
impl<Source> AccessAs for Source
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