An OpenTracing-compliant, simple, and extensible
distributed tracing library.
Simple: add a single MonadTrace constraint to start tracing, without
making your code harder to test!
Extensible: use the built-in Zipkin backend or hook in
your own trace publication logic.
import Monitor.Tracing
-- A traced action with its root span and two children.
run :: MonadTrace m => m ()
run = rootSpan alwaysSampled "parent" $ do
childSpan "child-a" runA
childSpan "child-b" runB
To learn more, hop on over to
Monitor.Tracing,
or take a look at examples in the examples/ folder.