diff --git a/hadoop-hdds/framework/pom.xml b/hadoop-hdds/framework/pom.xml index 34dcdde921f..1f71a2376f8 100644 --- a/hadoop-hdds/framework/pom.xml +++ b/hadoop-hdds/framework/pom.xml @@ -100,6 +100,10 @@ io.opentelemetry opentelemetry-api + + io.opentelemetry + opentelemetry-context + io.prometheus simpleclient diff --git a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/server/OzoneProtocolMessageDispatcher.java b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/server/OzoneProtocolMessageDispatcher.java index a0e19664366..94a35d488ab 100644 --- a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/server/OzoneProtocolMessageDispatcher.java +++ b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/server/OzoneProtocolMessageDispatcher.java @@ -19,6 +19,7 @@ import com.google.protobuf.ServiceException; import io.opentelemetry.api.trace.Span; +import io.opentelemetry.context.Scope; import java.util.function.Function; import org.apache.hadoop.hdds.tracing.TracingUtil; import org.apache.hadoop.hdds.utils.ProtocolMessageMetrics; @@ -71,7 +72,7 @@ public RESPONSE processRequest( TYPE type, String traceId) throws ServiceException { Span span = TracingUtil.importAndCreateSpan(type.toString(), traceId); - try { + try (Scope currentScope = span.makeCurrent()) { if (logger.isTraceEnabled()) { logger.trace( "[service={}] [type={}] request is received: {}",