Crate holochain_tracing

Source

Modules§

Macros§

Structs§

  • This samples all traces.
  • and combinator.
  • Binary representation is exactly 37 bytes, so ideally we would use a [u8; 37], but this is easier…
  • This samples no traces.
  • or combinator.
  • This samples traces which have one or more references.
  • This samples a certain percentage of traces.
  • 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.
  • 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 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.
  • Span tag.
  • Tracer.

Traits§

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

Functions§

  • Add a span to the stack that follows from a SpanWrap
  • TODO: use lazy_static / thread_local singleton Tracer
  • Tracer placeholder (use only as last resort)
  • 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
  • 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.
  • Dummy span, useful for tests that don’t test tracing
  • If the stack is not empty, return the top item, else return None
  • If the stack is not empty, return the top item, else return None
  • If the stack is not empty, return the top item, else return None

Type Aliases§