pub struct RuntimeDiagnostics {
pub uptime: Duration,
pub feed_count: usize,
pub max_feeds: usize,
pub feeds: Vec<FeedDiagnostics>,
pub batches: Vec<BatchDiagnostics>,
pub output_lag: OutputLagStatus,
pub detached_thread_count: usize,
}Expand description
Consolidated runtime-wide diagnostics snapshot.
Provides a one-call overview of every feed, batch coordinator, and output channel health. Fields are read from independent sources, so the snapshot is best-effort coherent — not transactionally consistent.
Obtained via Runtime::diagnostics()
or RuntimeHandle::diagnostics().
Fields§
§uptime: DurationElapsed time since the runtime was created.
feed_count: usizeNumber of currently active feeds.
max_feeds: usizeMaximum allowed concurrent feeds.
feeds: Vec<FeedDiagnostics>Per-feed diagnostics, sorted by FeedId for stable iteration.
batches: Vec<BatchDiagnostics>Diagnostics for each batch coordinator owned by this runtime.
output_lag: OutputLagStatusCurrent output broadcast channel saturation status.
detached_thread_count: usizeNumber of threads that were detached due to join timeouts and
have not yet been reaped. Non-zero values indicate threads that
are still blocked (e.g. in OutputSink::emit() or a batch
processor). Monitored and reaped on each diagnostics poll.
Trait Implementations§
Source§impl Clone for RuntimeDiagnostics
impl Clone for RuntimeDiagnostics
Source§fn clone(&self) -> RuntimeDiagnostics
fn clone(&self) -> RuntimeDiagnostics
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for RuntimeDiagnostics
impl RefUnwindSafe for RuntimeDiagnostics
impl Send for RuntimeDiagnostics
impl Sync for RuntimeDiagnostics
impl Unpin for RuntimeDiagnostics
impl UnsafeUnpin for RuntimeDiagnostics
impl UnwindSafe for RuntimeDiagnostics
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<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