diff --git a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/messaging/MessagingTextMap.java b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/messaging/MessagingTextMap.java index 5b75d46a6..8f6c9ec6e 100644 --- a/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/messaging/MessagingTextMap.java +++ b/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/instrument/messaging/MessagingTextMap.java @@ -60,14 +60,10 @@ class MessagingTextMap implements SpanTextMap { Message initialMessage = this.delegate.build(); MessageHeaderAccessor accessor = MessageHeaderAccessor .getMutableAccessor(initialMessage); - Map headers = new HashMap<>(); - headers.put(key, value); - accessor.copyHeaders(headers); + accessor.setHeader(key, value); if (accessor instanceof NativeMessageHeaderAccessor) { NativeMessageHeaderAccessor nativeAccessor = (NativeMessageHeaderAccessor) accessor; - for (String name : headers.keySet()) { - nativeAccessor.setNativeHeader(name, headers.get(name)); - } + nativeAccessor.setNativeHeader(key, value); } this.delegate.copyHeaders(accessor.toMessageHeaders()); }