Skip to main content

RecordObserver

Trait RecordObserver 

Source
pub trait RecordObserver: Send + Sync {
    // Provided methods
    fn call_started(&self, _call: &CallRecord) { ... }
    fn decision(&self, _record: &DecisionRecord) { ... }
    fn call_finished(&self, _call: &CallRecord) { ... }
}
Expand description

Sees records as they are made, for an embedder that streams a run while it executes.

Called on the thread running the program, after the recorder has released its lock. It must not block: an implementation that cannot keep up drops what it cannot hold. What it sees is also in the DecisionLogOutput the run ends with, unless the recorder’s own caps dropped it there.

Provided Methods§

Source

fn call_started(&self, _call: &CallRecord)

Source

fn decision(&self, _record: &DecisionRecord)

Source

fn call_finished(&self, _call: &CallRecord)

The call as it ended, without its payload contents: each side’s meta is Null and it has no body and no masked header names, but it keeps its size, digest, truncation flag, timing, and usage.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§