pub struct ShutdownReport {Show 15 fields
pub name: String,
pub elapsed: Duration,
pub completed: usize,
pub cancelled: usize,
pub aborted: usize,
pub failed: usize,
pub panicked: usize,
pub timed_out: usize,
pub leaked: usize,
pub blocking_still_running: usize,
pub children: Vec<ShutdownReport>,
pub remaining_tasks: Vec<TaskSnapshot>,
pub remaining_tasks_omitted: usize,
pub blocking_tasks: Vec<BlockingTaskSnapshot>,
pub annotations: Vec<ShutdownAnnotation>,
}Expand description
Represents shutdown report.
Fields§
§name: StringThe name value.
elapsed: DurationThe elapsed value.
completed: usizeThe completed value.
cancelled: usizeThe cancelled value.
aborted: usizeThe aborted value.
failed: usizeLifecycle components that completed with an explicit failure.
panicked: usizeThe panicked value.
timed_out: usizeTasks this shutdown aborted after its deadline expired, plus tasks still registered when it finished.
leaked: usizeTasks still registered when the shutdown finished.
blocking_still_running: usizeThe blocking still running value.
children: Vec<ShutdownReport>The children value.
remaining_tasks: Vec<TaskSnapshot>Tasks still registered when the shutdown finished, at most
Self::REMAINING_TASKS_LIMIT of them.
remaining_tasks_omitted: usizeRemaining tasks left out of remaining_tasks because of its limit.
They are still counted in leaked.
blocking_tasks: Vec<BlockingTaskSnapshot>The blocking tasks value.
annotations: Vec<ShutdownAnnotation>The annotations value.
Implementations§
Source§impl ShutdownReport
impl ShutdownReport
Sourcepub const REMAINING_TASKS_LIMIT: usize = 64
pub const REMAINING_TASKS_LIMIT: usize = 64
Maximum number of task snapshots kept in remaining_tasks.
The limit bounds the size of a report for a group that leaks many tasks; the counters stay exact.
Sourcepub fn is_healthy(&self) -> bool
pub fn is_healthy(&self) -> bool
Returns whether healthy.
Sourcepub fn assert_no_task_leak(&self) -> Result<(), String>
pub fn assert_no_task_leak(&self) -> Result<(), String>
Returns the assert no task leak.
Sourcepub fn log_if_unhealthy(&self)
pub fn log_if_unhealthy(&self)
Executes log if unhealthy.
Sourcepub fn merge_blocking(&mut self, snapshot: BlockingExecutorSnapshot)
pub fn merge_blocking(&mut self, snapshot: BlockingExecutorSnapshot)
Executes merge blocking.