package trace

  1. Overview
  2. Docs
A stub for tracing/observability, agnostic in how data is collected

Install

dune-project
 Dependency

Authors

Maintainers

Sources

trace-0.10.1.tbz
sha256=0b5121a2b3ca0f0d850017865333259f313ce83f77bba54da956f9cafbba6e34
sha512=06476b3b450d3f382ba7e5287591e2bb0f928d38b698af0bd6083d1518fcac93bf498815710d26ecbe9c80c71888638919c0166a79e447ee64ed625afd56dc4b

doc/trace.subscriber/Trace_subscriber/Callbacks/index.html

Module Trace_subscriber.CallbacksSource

Callbacks used for subscribers.

Each subscriber defines a set of callbacks, for each possible tracing event. These callbacks take a custom state that is paired with the callbacks in Subscriber.t.

To use a default implementation for some callbacks, use:

  module My_callbacks = struct
    type st = …

    include Trace_subscriber.Callbacks.Dummy

    let on_init (state:st) ~time_ns : unit = …

    (* … other custom callbacks … *)
  end

NOTE: the trace_id passed alongside manual spans is guaranteed to be at least 64 bits.

Sourcemodule type S = sig ... end

First class module signature for callbacks

Sourcetype 'st t = (module S with type st = 'st)

Callbacks for a subscriber. There is one callback per event in Trace. The type 'st is the state that is passed to every single callback.

Sourcemodule Dummy : sig ... end

Dummy callbacks. It can be useful to reuse some of these functions in a real subscriber that doesn't want to handle all events, but only some of them.

Sourceval dummy : unit -> 'st t

Dummy callbacks, ignores all events.