From 649d4b8aa87726b17df9bf818b8c32044019b94a Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Fri, 13 Feb 2026 02:29:29 +0000 Subject: [PATCH] handle sdk_disabled in all clients --- .../opentelemetry_client_cohttp_eio.ml | 14 +++++++------- .../opentelemetry_client_cohttp_lwt.ml | 9 +++++---- .../opentelemetry_client_ocurl_lwt.ml | 11 ++++++----- 3 files changed, 18 insertions(+), 16 deletions(-) diff --git a/src/client-cohttp-eio/opentelemetry_client_cohttp_eio.ml b/src/client-cohttp-eio/opentelemetry_client_cohttp_eio.ml index 08f7700c..19bdb06e 100644 --- a/src/client-cohttp-eio/opentelemetry_client_cohttp_eio.ml +++ b/src/client-cohttp-eio/opentelemetry_client_cohttp_eio.ml @@ -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 () diff --git a/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml b/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml index 2c93c61b..67ec9902 100644 --- a/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml +++ b/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml @@ -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 diff --git a/src/client-ocurl-lwt/opentelemetry_client_ocurl_lwt.ml b/src/client-ocurl-lwt/opentelemetry_client_ocurl_lwt.ml index d42a8281..d10273c4 100644 --- a/src/client-ocurl-lwt/opentelemetry_client_ocurl_lwt.ml +++ b/src/client-ocurl-lwt/opentelemetry_client_ocurl_lwt.ml @@ -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