tracing-control: Distributed tracing

[ bsd3, library, web ] [ Propose Tags ]

An OpenTracing-compliant, simple, and extensible distributed tracing library. This is a fork of tracing which switches from unliftio to monad-control.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.0.6, 0.0.7.2, 0.0.7.3
Dependencies aeson (>=1.4), base (>=4.9 && <5), base16-bytestring (>=1.0), bytestring (>=0.10), case-insensitive (>=1.2), containers (>=0.6), http-client (>=0.5), lifted-base (>=0.2), monad-control (>=1.0), mtl (>=2.2), network (>=2.8), random (>=1.1), stm (>=2.5), stm-lifted (>=2.5), text (>=1.2), time (>=1.8 && <1.13), transformers (>=0.5), transformers-base (>=0.4) [details]
License BSD-3-Clause
Copyright 2020 Matthieu Monsch
Author Matthieu Monsch, Alejandro Serrano
Maintainer alejandro.serrano@47deg.com
Category Web
Home page https://github.com/serras/tracing
Source repo head: git clone https://github.com/serras/tracing
Uploaded by AlejandroSerrano at 2022-03-20T19:07:43Z
Distributions
Reverse Dependencies 2 direct, 0 indirect [details]
Downloads 498 total (9 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for tracing-control-0.0.7.3

[back to package description]

Tracing Hackage

Important note: this is a fork of the original tracing library in which unliftio has been replaced by monad-control.

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.