Adjusting the adjusted span; fixes #750
This commit is contained in:
@@ -16,6 +16,12 @@
|
||||
|
||||
package org.springframework.cloud.sleuth.zipkin;
|
||||
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.springframework.cloud.commons.util.IdUtils;
|
||||
import org.springframework.cloud.sleuth.Log;
|
||||
import org.springframework.cloud.sleuth.NoOpSpanAdjuster;
|
||||
@@ -29,12 +35,6 @@ import zipkin.BinaryAnnotation;
|
||||
import zipkin.Constants;
|
||||
import zipkin.Endpoint;
|
||||
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* Listener of Sleuth events. Reports to Zipkin via {@link ZipkinSpanReporter}.
|
||||
*
|
||||
@@ -100,7 +100,7 @@ public class ZipkinSpanListener implements SpanReporter {
|
||||
//TODO: Consider adding support for the debug flag (related to #496)
|
||||
Span convertedSpan = span;
|
||||
for (SpanAdjuster adjuster : this.spanAdjusters) {
|
||||
convertedSpan = adjuster.adjust(span);
|
||||
convertedSpan = adjuster.adjust(convertedSpan);
|
||||
}
|
||||
zipkin.Span.Builder zipkinSpan = zipkin.Span.builder();
|
||||
Endpoint endpoint = this.endpointLocator.local();
|
||||
|
||||
@@ -20,6 +20,7 @@ import org.assertj.core.api.Condition;
|
||||
import zipkin.Constants;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import javax.annotation.PostConstruct;
|
||||
@@ -307,12 +308,14 @@ public class ZipkinSpanListenerTests {
|
||||
public void should_adjust_span_before_reporting_it() {
|
||||
this.parent.logEvent(Span.CLIENT_RECV);
|
||||
ZipkinSpanListener spanListener = new ZipkinSpanListener(this.spanReporter,
|
||||
this.endpointLocator, null, Collections.<SpanAdjuster>singletonList(
|
||||
span -> Span.builder().from(span).name("foo").build()));
|
||||
this.endpointLocator, null, Arrays.asList(
|
||||
(SpanAdjuster) span -> Span.builder().from(span).name("foo").build(),
|
||||
(SpanAdjuster) span -> Span.builder().from(span).name(span.getName() + "bar").build()
|
||||
));
|
||||
|
||||
zipkin.Span result = spanListener.convert(this.parent);
|
||||
|
||||
assertThat(result.name).isEqualTo("foo");
|
||||
assertThat(result.name).isEqualTo("foobar");
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user