pub struct TraceCollector { /* private fields */ }Expand description
Trace collector for sampling and batching traces.
Implementations§
Source§impl TraceCollector
impl TraceCollector
Sourcepub fn new(config: TracesConfig) -> Self
pub fn new(config: TracesConfig) -> Self
Create a new trace collector.
Sourcepub async fn drain(&self) -> Vec<Span>
pub async fn drain(&self) -> Vec<Span>
Drain the buffer and return all spans.
This is used by the flush loop to get spans for persistence.
Sourcepub fn sampled_count(&self) -> u64
pub fn sampled_count(&self) -> u64
Get sampled span count.
Sourcepub async fn buffer_size(&self) -> usize
pub async fn buffer_size(&self) -> usize
Get current buffer size.
Sourcepub fn sample_rate(&self) -> f64
pub fn sample_rate(&self) -> f64
Get the sample rate.
Auto Trait Implementations§
impl !Freeze for TraceCollector
impl !RefUnwindSafe for TraceCollector
impl Send for TraceCollector
impl Sync for TraceCollector
impl Unpin for TraceCollector
impl !UnwindSafe for TraceCollector
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
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>
Converts
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>
Converts
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