[][src]Struct rustracing::Tracer

pub struct Tracer<S, T> { /* fields omitted */ }

Tracer.

Examples

use rustracing::Tracer;
use rustracing::sampler::AllSampler;

let (span_tx, span_rx) = crossbeam_channel::bounded(10);
let tracer = Tracer::with_sender(AllSampler, span_tx);
{
   let _span = tracer.span("foo").start_with_state(());
}
let span = span_rx.try_recv().unwrap();
assert_eq!(span.operation_name(), "foo");

Methods

impl<S: Sampler<T>, T> Tracer<S, T>[src]

pub fn new(sampler: S) -> (Self, SpanReceiver<T>)[src]

Makes a new Tracer instance with an unbounded channel.

This constructor is mainly for backward compatibility, it has the same interface as in previous versions except the type of SpanReceiver. It builds an unbounded channel which may cause memory issues if there is no reader, prefer with_sender() alternative with a bounded one.

pub fn with_sender(sampler: S, span_tx: SpanSender<T>) -> Self[src]

Makes a new Tracer instance.

pub fn span<N>(&self, operation_name: N) -> StartSpanOptions<S, T> where
    N: Into<Cow<'static, str>>, 
[src]

Returns StartSpanOptions for starting a span which has the name operation_name.

impl<S, T> Tracer<S, T>[src]

pub fn clone_with_sampler<U: Sampler<T>>(&self, sampler: U) -> Tracer<U, T>[src]

Clone with the given sampler.

Trait Implementations

impl<S, T> Clone for Tracer<S, T>[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl<S: Debug, T: Debug> Debug for Tracer<S, T>[src]

Auto Trait Implementations

impl<S, T> Send for Tracer<S, T> where
    S: Send + Sync,
    T: Send

impl<S, T> Sync for Tracer<S, T> where
    S: Send + Sync,
    T: Send

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]