providers: self debug at installation

This commit is contained in:
Simon Cruanes 2026-03-04 13:11:25 -05:00
parent 875101de9b
commit 31190a3606
No known key found for this signature in database
GPG key ID: EBFFF6F283F3A2B4
3 changed files with 18 additions and 6 deletions

View file

@ -6,9 +6,13 @@ end
let get () : Logger.t = Atomic.get provider_
let set (t : Logger.t) : unit = Atomic.set provider_ t
let set (t : Logger.t) : unit =
Self_debug.log Info (fun () -> "otel: log provider installed");
Atomic.set provider_ t
let clear () : unit = Atomic.set provider_ Logger.dummy
let clear () : unit =
Self_debug.log Info (fun () -> "otel: log provider removed");
Atomic.set provider_ Logger.dummy
(** Get a logger pre-configured with a fixed set of attributes added to every
log record it emits, forwarding to the current global logger. Intended to be

View file

@ -6,9 +6,13 @@ end
let get () : Meter.t = Atomic.get provider_
let set (t : Meter.t) : unit = Atomic.set provider_ t
let set (t : Meter.t) : unit =
Self_debug.log Info (fun () -> "otel: meter provider installed");
Atomic.set provider_ t
let clear () : unit = Atomic.set provider_ Meter.dummy
let clear () : unit =
Self_debug.log Info (fun () -> "otel: meter provider removed");
Atomic.set provider_ Meter.dummy
(** Get a meter pre-configured with a fixed set of attributes added to every
metric it emits, forwarding to the current global meter. Intended to be

View file

@ -9,11 +9,15 @@ end
let get () : Tracer.t = Atomic.get provider_
(** Set current tracer *)
let set (t : Tracer.t) : unit = Atomic.set provider_ t
let set (t : Tracer.t) : unit =
Self_debug.log Info (fun () -> "otel: trace provider installed");
Atomic.set provider_ t
(** Replace current tracer by the dummy one. All spans will be discarded from
now on. *)
let clear () : unit = Atomic.set provider_ Tracer.dummy
let clear () : unit =
Self_debug.log Info (fun () -> "otel: trace provider removed");
Atomic.set provider_ Tracer.dummy
(** Get a tracer pre-configured with a fixed set of attributes added to every
span it emits, forwarding to the current global tracer. Intended to be