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.
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.