Crate cf_rustracing_jaeger

Crate cf_rustracing_jaeger 

Source
Expand description

Jaeger client library created on top of rustracing.

§Examples

use cf_rustracing::sampler::AllSampler;
use cf_rustracing_jaeger::Tracer;
use cf_rustracing_jaeger::reporter::JaegerCompactReporter;
use std::net::Ipv4Addr;

// Creates a tracer
let (tracer, mut span_rx) = Tracer::new(AllSampler);
{
    let span = tracer.span("sample_op").start();
    // Do something

} // The dropped span will be sent to `span_rx`

let span = span_rx.recv().await.unwrap();
assert_eq!(span.operation_name(), "sample_op");

// Reports this span to the local jaeger agent
let reporter = JaegerCompactReporter::new(
    "sample_service",
    (Ipv4Addr::LOCALHOST, 6831).into(),
    (Ipv4Addr::LOCALHOST, 0).into(),
)
.await
.unwrap();

reporter.report(&[span]).await.unwrap();

Re-exports§

pub use self::span::Span;

Modules§

reporter
Reporter to the jaeger agent
span
Span.
thrift
Thrift messages for Jaeger.

Structs§

Error
This crate specific error type.
Tracer
Tracer.

Enums§

ErrorKind
The list of the possible error kinds

Type Aliases§

Result
This crate specific Result type.