From 0242859cc692baf2e1357497636b07210d4c7a69 Mon Sep 17 00:00:00 2001 From: Marcin Grzejszczak Date: Mon, 19 Apr 2021 16:59:21 +0200 Subject: [PATCH] Fixed the decorate queues reactor option; fixes gh-1735 --- .../sleuth/instrument/reactor/SleuthReactorProperties.java | 2 +- .../instrument/reactor/TraceReactorAutoConfiguration.java | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/reactor/SleuthReactorProperties.java b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/reactor/SleuthReactorProperties.java index 435d86df8..909ae455d 100644 --- a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/reactor/SleuthReactorProperties.java +++ b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/reactor/SleuthReactorProperties.java @@ -38,7 +38,7 @@ public class SleuthReactorProperties { * the feature set of {@link SleuthReactorProperties#decorateOnEach} with the least * impact on the performance. */ - private boolean decorateQueues = true; + private boolean decorateQueues = false; /** * When true decorates on each operator, will be less performing, but logging will diff --git a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/reactor/TraceReactorAutoConfiguration.java b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/reactor/TraceReactorAutoConfiguration.java index 0a24de6be..5e1d53245 100644 --- a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/reactor/TraceReactorAutoConfiguration.java +++ b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/reactor/TraceReactorAutoConfiguration.java @@ -105,6 +105,7 @@ public class TraceReactorAutoConfiguration { log.trace("Resetting queue wrapper instrumentation"); } Hooks.removeQueueWrapper(SLEUTH_TRACE_REACTOR_KEY); + Hooks.resetOnLastOperator(SLEUTH_TRACE_REACTOR_KEY); } if (reactorProperties.isDecorateOnEach()) { if (log.isTraceEnabled()) { @@ -181,6 +182,8 @@ class HooksRefresher implements ApplicationListener log.trace("Adding queue wrapper instrumentation"); } HookRegisteringBeanDefinitionRegistryPostProcessor.addQueueWrapper(context); + Hooks.onLastOperator(SLEUTH_TRACE_REACTOR_KEY, + scopePassingSpanOperator(this.context)); } else if (this.reactorProperties.isDecorateOnEach()) { if (log.isTraceEnabled()) {