pub struct NullExporter { /* private fields */ }Expand description
A test exporter that collects spans in memory.
Thread-safe via std::sync::Mutex (available when std feature is on)
or via single-threaded usage in no_std tests.
§Examples
use grafos_observe::export::NullExporter;
use grafos_observe::export::SpanExporter;
use grafos_observe::span::ResourceSpan;
use grafos_observe::trace::TraceContext;
let exporter = NullExporter::new();
let span = ResourceSpan::new("test", TraceContext::default());
exporter.export(&[span]);
assert_eq!(exporter.len(), 1);
let spans = exporter.drain();
assert_eq!(spans.len(), 1);
assert_eq!(spans[0].name, "test");Implementations§
Source§impl NullExporter
impl NullExporter
Sourcepub fn drain(&self) -> Vec<ResourceSpan>
pub fn drain(&self) -> Vec<ResourceSpan>
Drain all collected spans, returning them and clearing the buffer.
Sourcepub fn snapshot(&self) -> Vec<ResourceSpan>
pub fn snapshot(&self) -> Vec<ResourceSpan>
Get a snapshot (clone) of all collected spans.
Trait Implementations§
Source§impl Default for NullExporter
impl Default for NullExporter
Source§impl SpanExporter for NullExporter
impl SpanExporter for NullExporter
Auto Trait Implementations§
impl !Freeze for NullExporter
impl RefUnwindSafe for NullExporter
impl Send for NullExporter
impl Sync for NullExporter
impl Unpin for NullExporter
impl UnwindSafe for NullExporter
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
Mutably borrows from an owned value. Read more