diff --git a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/hystrix/TraceCommand.java b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/hystrix/TraceCommand.java index 3c1dfcc97..ee91382bc 100644 --- a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/hystrix/TraceCommand.java +++ b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/hystrix/TraceCommand.java @@ -55,7 +55,7 @@ public abstract class TraceCommand extends HystrixCommand { this.traceKeys.getHystrix().getCommandGroup(), getCommandGroup().name()); span.tag(this.traceKeys.getHystrix().getPrefix() + this.traceKeys.getHystrix().getThreadPoolKey(), getThreadPoolKey().name()); - try (Tracer.SpanInScope ws = this.tracer.withSpanInScope(span)) { + try (Tracer.SpanInScope ws = this.tracer.withSpanInScope(span.start())) { return doRun(); } finally { diff --git a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/hystrix/TraceCommandTests.java b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/hystrix/TraceCommandTests.java index 4e0dcce6d..0bd35a440 100644 --- a/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/hystrix/TraceCommandTests.java +++ b/spring-cloud-sleuth-core/src/test/java/org/springframework/cloud/sleuth/instrument/hystrix/TraceCommandTests.java @@ -70,6 +70,8 @@ public class TraceCommandTests { then(this.reporter.getSpans()).hasSize(1); then(this.reporter.getSpans().get(0).tags()) .containsEntry("commandKey", "traceCommandKey"); + then(this.reporter.getSpans().get(0).duration()) + .isGreaterThan(0L); } @Test