From 58d1e82f667e29a1b7bed5c77416d1ac0a56ccfa Mon Sep 17 00:00:00 2001 From: Corentin Leruth Date: Mon, 7 Oct 2024 15:28:19 +0200 Subject: [PATCH] add Scope.make --- src/core/opentelemetry.ml | 4 ++++ src/integrations/cohttp/opentelemetry_cohttp_lwt.ml | 10 +--------- src/trace/opentelemetry_trace.ml | 10 +--------- 3 files changed, 6 insertions(+), 18 deletions(-) diff --git a/src/core/opentelemetry.ml b/src/core/opentelemetry.ml index 4b030787..2e954a6b 100644 --- a/src/core/opentelemetry.ml +++ b/src/core/opentelemetry.ml @@ -809,6 +809,10 @@ module Scope = struct mutable links: Span_link.t list; } + let make ~trace_id ~span_id ?(events = []) ?(attrs = []) ?(links = []) () : t + = + { trace_id; span_id; events; attrs; links } + (** Turn the scope into a span context *) let[@inline] to_span_ctx (self : t) : Span_ctx.t = Span_ctx.make ~trace_id:self.trace_id ~parent_id:self.span_id () diff --git a/src/integrations/cohttp/opentelemetry_cohttp_lwt.ml b/src/integrations/cohttp/opentelemetry_cohttp_lwt.ml index a3ffc715..a0dee06f 100644 --- a/src/integrations/cohttp/opentelemetry_cohttp_lwt.ml +++ b/src/integrations/cohttp/opentelemetry_cohttp_lwt.ml @@ -111,15 +111,7 @@ end = struct | Some v -> (match Traceparent.of_value v with | Ok (trace_id, parent_id) -> - Some - Otel.Trace. - { - trace_id; - span_id = parent_id; - events = []; - attrs = []; - links = []; - } + Some (Otel.Scope.make ~trace_id ~span_id:parent_id ()) | Error _ -> None) let remove_trace_context req = diff --git a/src/trace/opentelemetry_trace.ml b/src/trace/opentelemetry_trace.ml index a27788e9..9c53c33e 100644 --- a/src/trace/opentelemetry_trace.ml +++ b/src/trace/opentelemetry_trace.ml @@ -121,15 +121,7 @@ module Internal = struct | None, None -> None in - let new_scope = - { - Scope.span_id = otel_id; - trace_id; - events = []; - attrs = data; - links = []; - } - in + let new_scope = Otel.Scope.make ~trace_id ~span_id:otel_id ~attrs:data () in let start_time = Timestamp_ns.now_unix_ns () in let sb =