[][src]Crate holochain_tracing

Modules

channel
tracer_console
tracer_network

Structs

AllSampler

This samples all traces.

AndSampler

and combinator.

NullSampler

This samples no traces.

OrSampler

or combinator.

PassiveSampler

This samples traces which have one or more references.

ProbabilisticSampler

This samples a certain percentage of traces.

Reporter

Reporter for the agent which accepts jaeger.thrift over compact thrift protocol.

Span

A wrapper around a simple rustracing_jaeger::RjSpan, providing some convenience functions. It overshadows the lower-level child and follower methods with simpler versions. To access the lower-level methods, use .0.

SpanContext

An OpenTracing SpanContext is used to send span info across a process boundary. This is a simple wrapper around that, again with some helper functions.

SpanWrap

SpanWrap is a simple way to couple some data along with a struct. It is common to send some data on a channel which will be used as arguments to a function on the receiving side, where we also want to continue the trace on the receiving side. This struct helps keep that data together with minimal boilerplate.

Tag

Span tag.

Tracer

Tracer.

Traits

Sampler

Sampler decides whether a new trace should be sampled or not.

Functions

is_empty
null_tracer

Tracer placeholder (use only as last resort)

push_span

Push a span onto the stack. The value will automatically be popped when the returned guard is dropped, as well as the guards of any subsequently pushed spans

push_span_with

Applies a function to the top of the span stack and pushes the value onto the stack. If the stack is empty, the function will not be executed and None will be returned.

test_span

Dummy span, useful for tests that don't test tracing

with_top

If the stack is not empty, return the top item, else return None

Type Definitions

BoxSampler

Boxed version of Sampler.

EncodedSpanContext

Binary representation is exactly 37 bytes, so ideally we would use a [u8; 37], but this is easier...