#[non_exhaustive]pub struct Stats {Show 14 fields
pub checks: u64,
pub reports: u64,
pub units: u64,
pub overflowed: bool,
pub max_check_gap: Duration,
pub max_check_gap_start: Duration,
pub max_report_gap: Option<ReportGap>,
pub unit_pace: Option<UnitPace>,
pub check_time: Duration,
pub stopped_at: Option<Duration>,
pub stop_reason: Option<StopReason>,
pub clock_regressions: u64,
pub sites: Vec<SiteStats>,
pub unattributed_calls: u64,
}Expand description
One span’s checkpoint evidence. Gaps include entry and exit, so a span with no checks still records how long it ran unchecked.
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.checks: u64Cancellation checks (saturating).
reports: u64Report calls (saturating).
units: u64Units reported (saturating).
overflowed: boolWhether any count saturated; rates then lose their meaning.
max_check_gap: DurationLongest interval without a check: entry to first check, check to check, or last check to exit.
max_check_gap_start: DurationStart of that interval, in the clock’s epoch.
max_report_gap: Option<ReportGap>Longest interval between reports, if report timing was on.
unit_pace: Option<UnitPace>How long each quarter of the reported units took, if report timing was on.
check_time: DurationTime spent inside instrumented checks, including any work they ran.
Timing a check takes a second clock read, so a span times its first
16 checks, every 16th after them, and every check that returned a
stop, and scales the timed total to all its checks. A slow check
that was not timed still shows in max_check_gap,
which runs from one check’s start to the next.
stopped_at: Option<Duration>When the first check that returned a stop error finished.
stop_reason: Option<StopReason>That check’s reason, which keeps cancellation apart from a timeout.
clock_regressions: u64Times the clock went backwards within one call, or at finish. Workers sharing a span can deliver readings out of order; that is expected, counts as a zero gap, and is not a regression.
sites: Vec<SiteStats>Up to 64 distinct call sites.
unattributed_calls: u64Calls from sites beyond the first 64. The totals above still count them.