handle sdk_disabled in all clients

This commit is contained in:
Simon Cruanes 2026-02-13 02:29:29 +00:00
parent 5114b6a8e7
commit 649d4b8aa8
No known key found for this signature in database
GPG key ID: EBFFF6F283F3A2B4
3 changed files with 18 additions and 16 deletions

View file

@ -175,13 +175,13 @@ let create_exporter ?(config = Config.make ()) ~sw ~env () =
let create_backend = create_exporter
let setup_ ~sw ?config env : unit =
let setup_ ~sw ~config env : unit =
Opentelemetry_ambient_context.set_current_storage Ambient_context_eio.storage;
let exp = create_exporter ?config ~sw ~env () in
let exp = create_exporter ~config ~sw ~env () in
Main_exporter.set exp
let setup ?config ?(enable = true) ~sw env =
if enable then setup_ ~sw ?config env
let setup ?(config = Config.make ()) ?(enable = true) ~sw env =
if enable && not config.sdk_disabled then setup_ ~sw ~config env
let remove_exporter () =
let p, waker = Eio.Promise.create () in
@ -190,10 +190,10 @@ let remove_exporter () =
let remove_backend = remove_exporter
let with_setup ?config ?(enable = true) env f =
if enable then (
let with_setup ?(config = Config.make ()) ?(enable = true) env f =
if enable && not config.sdk_disabled then (
Eio.Switch.run @@ fun sw ->
setup_ ~sw ?config env;
setup_ ~sw ~config env;
Fun.protect f ~finally:remove_exporter
) else
f ()

View file

@ -116,13 +116,14 @@ let create_exporter ?(config = Config.make ()) () =
let create_backend = create_exporter
let setup_ ?config () : unit =
let setup_ ~config () : unit =
Opentelemetry_client_lwt.Util_ambient_context.setup_ambient_context ();
let exp = create_exporter ?config () in
let exp = create_exporter ~config () in
Main_exporter.set exp;
()
let setup ?config ?(enable = true) () = if enable then setup_ ?config ()
let setup ?(config = Config.make ()) ?(enable = true) () =
if enable && not config.sdk_disabled then setup_ ~config ()
let remove_exporter () : unit Lwt.t =
let done_fut, done_u = Lwt.wait () in
@ -137,7 +138,7 @@ let remove_exporter () : unit Lwt.t =
let remove_backend = remove_exporter
let with_setup ?(config = Config.make ()) ?(enable = true) () f : _ Lwt.t =
if enable then (
if enable && not config.sdk_disabled then (
setup_ ~config ();
Lwt.finalize f remove_exporter

View file

@ -87,14 +87,15 @@ let create_exporter ?(config = Config.make ()) () =
let create_backend = create_exporter
let setup_ ?config () : Exporter.t =
let setup_ ~config () : Exporter.t =
Opentelemetry_client_lwt.Util_ambient_context.setup_ambient_context ();
let exp = create_exporter ?config () in
let exp = create_exporter ~config () in
Main_exporter.set exp;
exp
let setup ?config ?(enable = true) () =
if enable then ignore (setup_ ?config () : Exporter.t)
let setup ?(config = Config.make ()) ?(enable = true) () =
if enable && not config.sdk_disabled then
ignore (setup_ ~config () : Exporter.t)
let remove_exporter () : unit Lwt.t =
let done_fut, done_u = Lwt.wait () in
@ -105,7 +106,7 @@ let remove_backend = remove_exporter
let with_setup ?(after_shutdown = ignore) ?(config = Config.make ())
?(enable = true) () f : _ Lwt.t =
if enable then
if enable && not config.sdk_disabled then
let open Lwt.Syntax in
let exp = setup_ ~config () in