From 75b5624b32ec037f37a04bc40542028ba952fbe7 Mon Sep 17 00:00:00 2001 From: Katsuhiro Muto <63308909+eycjur@users.noreply.github.com> Date: Mon, 27 Oct 2025 02:12:04 +0900 Subject: [PATCH] Fix duplicate trace (#15931) Co-authored-by: eycjur --- litellm/integrations/opentelemetry.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/litellm/integrations/opentelemetry.py b/litellm/integrations/opentelemetry.py index 267a63be5c2..11f2c6b2618 100644 --- a/litellm/integrations/opentelemetry.py +++ b/litellm/integrations/opentelemetry.py @@ -186,9 +186,11 @@ class OpenTelemetry(CustomLogger): ) return - # Add Otel as a service callback - if "otel" not in litellm.service_callback: - litellm.service_callback.append("otel") + # Add self as a service callback + if "otel" not in litellm.service_callback and all( + not isinstance(cb, OpenTelemetry) for cb in litellm.service_callback + ): + litellm.service_callback.append(self) setattr(proxy_server, "open_telemetry_logger", self) def _init_tracing(self, tracer_provider):