pub struct TraceReport {Show 17 fields
pub call: CallReport,
pub scopes: Vec<String>,
pub excluded: &'static str,
pub window_s: f64,
pub subscribed_before_call: bool,
pub t0_unix_s: f64,
pub call_returned_ms: f64,
pub hlc_reference: HlcReference,
pub reply_hlc: Option<String>,
pub chain_rule: &'static str,
pub registry_loaded: bool,
pub idiom: String,
pub attributed: Vec<TraceRow>,
pub same_origin: Vec<TraceRow>,
pub concurrent: ConcurrentLane,
pub dropped: u64,
pub keys_evicted: u64,
}Expand description
The call, then what was observed after it.
Fields§
§call: CallReport§scopes: Vec<String>The selectors actually watched (O5): the origin’s subtree, then the fleet-wide window the concurrent lane is counted from.
excluded: &'static str§window_s: f64§subscribed_before_call: boolAlways true; pinned so that inverting the order changes the document.
t0_unix_s: f64t0 on the wall clock, seconds since the Unix epoch — the one wall
reading in the report, so a script can place the window beside logs.
call_returned_ms: f64When the GET returned, ms after t0: the reply arrived at or before
this instant (the fan-in waits for the query to finalize, which is not
the reply’s own arrival — that instant the query layer does not hand
out).
hlc_reference: HlcReference§reply_hlc: Option<String>The reply’s HLC, <ntp64>/<stamper>, when hlc_reference is reply.
chain_rule: &'static str§registry_loaded: boolWhether a registry was loaded. false means every same-origin row is
TraceRelation::SameOriginRegistryNotLoaded — and, when the window
was empty, that the chain could not have been judged at all.
idiom: StringThe procedure’s declared kind token — long-running, write,
read — or undeclared when no loaded slice declares it.
attributed: Vec<TraceRow>Same origin, in the declared chain — in arrival order.
same_origin: Vec<TraceRow>Same origin, not in the chain (or not judgeable) — in arrival order.
concurrent: ConcurrentLane§dropped: u64Samples the origin’s watch dropped while behind (O6); each is also a
break_before on the next row of every lane.
keys_evicted: u64Keys the origin watch’s statistics table retired during the window.
Implementations§
Source§impl TraceReport
impl TraceReport
Sourcepub fn exit_code(&self) -> i32
pub fn exit_code(&self) -> i32
The call’s own exit code, unchanged: a trace is an act’s observation,
not a judgement, and nothing seen in the window moves it
(CallReport::exit_code).
Trait Implementations§
Source§impl Clone for TraceReport
impl Clone for TraceReport
Source§fn clone(&self) -> TraceReport
fn clone(&self) -> TraceReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TraceReport
impl Debug for TraceReport
Auto Trait Implementations§
impl Freeze for TraceReport
impl RefUnwindSafe for TraceReport
impl Send for TraceReport
impl Sync for TraceReport
impl Unpin for TraceReport
impl UnsafeUnpin for TraceReport
impl UnwindSafe for TraceReport
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
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> ⓘ
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