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 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; 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 Main_exporter.set exp
let setup ?config ?(enable = true) ~sw env = let setup ?(config = Config.make ()) ?(enable = true) ~sw env =
if enable then setup_ ~sw ?config env if enable && not config.sdk_disabled then setup_ ~sw ~config env
let remove_exporter () = let remove_exporter () =
let p, waker = Eio.Promise.create () in let p, waker = Eio.Promise.create () in
@ -190,10 +190,10 @@ let remove_exporter () =
let remove_backend = remove_exporter let remove_backend = remove_exporter
let with_setup ?config ?(enable = true) env f = let with_setup ?(config = Config.make ()) ?(enable = true) env f =
if enable then ( if enable && not config.sdk_disabled then (
Eio.Switch.run @@ fun sw -> Eio.Switch.run @@ fun sw ->
setup_ ~sw ?config env; setup_ ~sw ~config env;
Fun.protect f ~finally:remove_exporter Fun.protect f ~finally:remove_exporter
) else ) else
f () f ()

View file

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

View file

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