#[non_exhaustive]pub struct RunnerMetricsDelta {Show 14 fields
pub time_events: u64,
pub exec_events: u64,
pub exec_commands: u64,
pub data_events: u64,
pub data_commands: u64,
pub time_events_busy_ns: u64,
pub exec_events_busy_ns: u64,
pub exec_commands_busy_ns: u64,
pub data_events_busy_ns: u64,
pub data_commands_busy_ns: u64,
pub dispatch_busy_ns: u64,
pub maintenance_busy_ns: u64,
pub external_msgbus_busy_ns: u64,
pub elapsed_ns: u64,
}Expand description
Derived deltas between two LiveNode::run runner metrics snapshots.
Values are saturating differences between two RunnerMetricsSnapshot samples. Queue depths
and last-dispatch timestamps remain snapshot-only point-in-time values.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.time_events: u64Number of time events dispatched during the sample window.
exec_events: u64Number of execution events dispatched during the sample window.
exec_commands: u64Number of execution commands dispatched during the sample window.
data_events: u64Number of data events dispatched during the sample window.
data_commands: u64Number of data commands dispatched during the sample window.
time_events_busy_ns: u64Nanoseconds spent dispatching time events during the sample window.
exec_events_busy_ns: u64Nanoseconds spent dispatching execution events during the sample window.
exec_commands_busy_ns: u64Nanoseconds spent dispatching execution commands during the sample window.
data_events_busy_ns: u64Nanoseconds spent dispatching data events during the sample window.
data_commands_busy_ns: u64Nanoseconds spent dispatching data commands during the sample window.
dispatch_busy_ns: u64Nanoseconds spent in the five dispatch branches during the sample window.
maintenance_busy_ns: u64Nanoseconds spent in maintenance and reconciliation processing during the sample window.
external_msgbus_busy_ns: u64Nanoseconds spent handling external message bus ingress during the sample window.
elapsed_ns: u64Monotonic nanoseconds elapsed during the sample window.
Implementations§
Source§impl RunnerMetricsDelta
impl RunnerMetricsDelta
Sourcepub fn from_snapshots(
before: RunnerMetricsSnapshot,
after: RunnerMetricsSnapshot,
) -> Self
pub fn from_snapshots( before: RunnerMetricsSnapshot, after: RunnerMetricsSnapshot, ) -> Self
Returns the saturating delta between two runner metrics snapshots.
Sourcepub const fn total_dispatched(&self) -> u64
pub const fn total_dispatched(&self) -> u64
Returns the total messages dispatched across all runner channels.
Sourcepub fn dispatch_utilization(&self) -> f64
pub fn dispatch_utilization(&self) -> f64
Returns dispatch busy time divided by elapsed time for the sample window.
Returns 0.0 when the elapsed window is zero.
Sourcepub fn loop_utilization(&self) -> f64
pub fn loop_utilization(&self) -> f64
Returns total timed runner-loop work divided by elapsed time for the sample window.
Total work includes dispatch, maintenance, reconciliation, and external message bus ingress
handling. Returns 0.0 when the elapsed window is zero.
Sourcepub fn mean_dispatch_ns(&self) -> u64
pub fn mean_dispatch_ns(&self) -> u64
Returns mean dispatch time in nanoseconds for the sample window.
Returns zero when no dispatches were recorded.
Sourcepub fn channel_mean_dispatch_ns(&self, channel: SystemChannel) -> u64
pub fn channel_mean_dispatch_ns(&self, channel: SystemChannel) -> u64
Returns mean dispatch time in nanoseconds for channel during the sample window.
Returns zero when the channel dispatched no messages.
Sourcepub const fn total_busy_ns(&self) -> u64
pub const fn total_busy_ns(&self) -> u64
Returns the total nanoseconds spent in timed runner-loop work.
Trait Implementations§
Source§impl Clone for RunnerMetricsDelta
impl Clone for RunnerMetricsDelta
Source§fn clone(&self) -> RunnerMetricsDelta
fn clone(&self) -> RunnerMetricsDelta
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for RunnerMetricsDelta
Source§impl Debug for RunnerMetricsDelta
impl Debug for RunnerMetricsDelta
Source§impl Default for RunnerMetricsDelta
impl Default for RunnerMetricsDelta
Source§fn default() -> RunnerMetricsDelta
fn default() -> RunnerMetricsDelta
impl Eq for RunnerMetricsDelta
Source§impl PartialEq for RunnerMetricsDelta
impl PartialEq for RunnerMetricsDelta
impl StructuralPartialEq for RunnerMetricsDelta
Auto Trait Implementations§
impl Freeze for RunnerMetricsDelta
impl RefUnwindSafe for RunnerMetricsDelta
impl Send for RunnerMetricsDelta
impl Sync for RunnerMetricsDelta
impl Unpin for RunnerMetricsDelta
impl UnsafeUnpin for RunnerMetricsDelta
impl UnwindSafe for RunnerMetricsDelta
Blanket Implementations§
impl<T> Allocation for T
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
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<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.