Maintained by [email protected]
An OpenTracing-compliant, simple, and extensible distributed tracing library.
- Simple: add a single
MonadTraceconstraint 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
or take a look at examples in the