You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by ni...@apache.org on 2018/01/09 07:39:54 UTC
[incubator-servicecomb-java-chassis] 02/04: SCB-172 fix tests for
upgrading to zipkin2
This is an automated email from the ASF dual-hosted git repository.
ningjiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git
commit 1132c4b8d3985b57888b12cde551c648fa469b1e
Author: Yang, Bo <ya...@huawei.com>
AuthorDate: Fri Jan 5 15:18:08 2018 +0800
SCB-172 fix tests for upgrading to zipkin2
The name, traceId, id members are refactored to methods in zipkin2. And the
binaryAnnotations member is refactored to method tags() which returns a map.
The dependency on io.zipkin.java artivacts are not needed anymore. But the
mocking in tests requires zipkin.Endpoint so we kept it for test scope.
---
handlers/handler-tracing-zipkin/pom.xml | 7 +++++
java-chassis-dependencies/pom.xml | 7 +++++
.../tracing/zipkin/ZipkinSpanAspectTest.java | 22 +++++++-------
.../tracing/zipkin/ZipkinTracingAdviserTest.java | 34 +++++++++++-----------
4 files changed, 42 insertions(+), 28 deletions(-)
diff --git a/handlers/handler-tracing-zipkin/pom.xml b/handlers/handler-tracing-zipkin/pom.xml
index 134f3b3..f7454d5 100644
--- a/handlers/handler-tracing-zipkin/pom.xml
+++ b/handlers/handler-tracing-zipkin/pom.xml
@@ -58,6 +58,13 @@
<artifactId>brave-context-log4j12</artifactId>
</dependency>
<dependency>
+ <!-- only needed in test phase for mocking brave -->
+ <groupId>io.zipkin.java</groupId>
+ <artifactId>zipkin</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
</dependency>
diff --git a/java-chassis-dependencies/pom.xml b/java-chassis-dependencies/pom.xml
index ae6efaf..7c7f351 100644
--- a/java-chassis-dependencies/pom.xml
+++ b/java-chassis-dependencies/pom.xml
@@ -651,6 +651,13 @@
<version>${zipkin.version}</version>
</dependency>
<dependency>
+ <!-- only needed in test phase for mocking brave -->
+ <groupId>io.zipkin.java</groupId>
+ <artifactId>zipkin</artifactId>
+ <version>${zipkin.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>io.zipkin.brave</groupId>
<artifactId>brave</artifactId>
<version>${brave.version}</version>
diff --git a/tracing/tracing-zipkin/src/test/java/io/servicecomb/tracing/zipkin/ZipkinSpanAspectTest.java b/tracing/tracing-zipkin/src/test/java/io/servicecomb/tracing/zipkin/ZipkinSpanAspectTest.java
index a05cf1f..72ddbb6 100644
--- a/tracing/tracing-zipkin/src/test/java/io/servicecomb/tracing/zipkin/ZipkinSpanAspectTest.java
+++ b/tracing/tracing-zipkin/src/test/java/io/servicecomb/tracing/zipkin/ZipkinSpanAspectTest.java
@@ -45,7 +45,7 @@ import io.servicecomb.tracing.zipkin.ZipkinSpanAspectTest.TracingConfig;
import io.servicecomb.tracing.zipkin.app.ZipkinSpanTestApplication;
import io.servicecomb.tracing.zipkin.app.ZipkinSpanTestApplication.CustomSpanTask;
import io.servicecomb.tracing.zipkin.app.ZipkinSpanTestApplication.SomeSlowTask;
-import zipkin.Span;
+import zipkin2.Span;
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {ZipkinSpanTestApplication.class, TracingConfig.class})
@@ -74,8 +74,8 @@ public class ZipkinSpanAspectTest {
await().atMost(2, SECONDS).until(() -> !spans.isEmpty());
- zipkin.Span span = spans.poll();
- assertThat(span.name, is("crawl"));
+ zipkin2.Span span = spans.poll();
+ assertThat(span.name(), is("crawl"));
assertThat(tracedValues(span), contains(SomeSlowTask.class.getMethod("crawl").toString()));
}
@@ -84,17 +84,17 @@ public class ZipkinSpanAspectTest {
customSpanTask.invoke();
await().atMost(2, SECONDS).until(() -> !spans.isEmpty());
- zipkin.Span span = spans.poll();
- assertThat(span.name, is("transaction1"));
+ zipkin2.Span span = spans.poll();
+ assertThat(span.name(), is("transaction1"));
assertThat(tracedValues(span), contains("startA"));
}
- private List<String> tracedValues(zipkin.Span spans) {
- return spans.binaryAnnotations.stream()
- .filter(span -> CALL_PATH.equals(span.key) || "error".equals(span.key))
- .filter(span -> span.value != null)
- .map(annotation -> new String(annotation.value))
+ private List<String> tracedValues(zipkin2.Span spans) {
+ return spans.tags().entrySet().stream()
+ .filter(span -> CALL_PATH.equals(span.getKey()) || "error".equals(span.getKey()))
+ .filter(span -> span.getValue() != null)
+ .map(annotation -> new String(annotation.getValue()))
.distinct()
.collect(Collectors.toList());
}
@@ -110,7 +110,7 @@ public class ZipkinSpanAspectTest {
Tracing tracing(Queue<Span> spans) {
return Tracing.newBuilder()
.currentTraceContext(new StrictCurrentTraceContext())
- .reporter(spans::add)
+ .spanReporter(spans::add)
.build();
}
}
diff --git a/tracing/tracing-zipkin/src/test/java/io/servicecomb/tracing/zipkin/ZipkinTracingAdviserTest.java b/tracing/tracing-zipkin/src/test/java/io/servicecomb/tracing/zipkin/ZipkinTracingAdviserTest.java
index 0040b81..cb49748 100644
--- a/tracing/tracing-zipkin/src/test/java/io/servicecomb/tracing/zipkin/ZipkinTracingAdviserTest.java
+++ b/tracing/tracing-zipkin/src/test/java/io/servicecomb/tracing/zipkin/ZipkinTracingAdviserTest.java
@@ -60,11 +60,11 @@ public class ZipkinTracingAdviserTest {
private final ThrowableSupplier<String> supplier = () -> expected;
- private final Map<Long, Queue<zipkin.Span>> traces = new ConcurrentHashMap<>();
+ private final Map<String, Queue<zipkin2.Span>> traces = new ConcurrentHashMap<>();
private final Tracing tracing = Tracing.newBuilder()
.currentTraceContext(new StrictCurrentTraceContext())
- .reporter(e -> traces.computeIfAbsent(e.traceId, id -> new ConcurrentLinkedDeque<>()).add(e))
+ .spanReporter(e -> traces.computeIfAbsent(e.traceId(), id -> new ConcurrentLinkedDeque<>()).add(e))
.build();
private final ZipkinTracingAdviser tracingAdviser = new ZipkinTracingAdviser(tracing.tracer());
@@ -81,8 +81,8 @@ public class ZipkinTracingAdviserTest {
assertThat(result, is(expected));
await().atMost(2, SECONDS).until(() -> !traces.isEmpty());
- zipkin.Span span = traces.values().iterator().next().poll();
- assertThat(span.name, is(spanName));
+ zipkin2.Span span = traces.values().iterator().next().poll();
+ assertThat(span.name(), is(spanName));
assertThat(tracedValues(span), contains(this.getClass().getCanonicalName()));
}
@@ -99,8 +99,8 @@ public class ZipkinTracingAdviserTest {
await().atMost(2, SECONDS).until(() -> !traces.isEmpty());
- zipkin.Span span = traces.values().iterator().next().poll();
- assertThat(span.name, is(spanName));
+ zipkin2.Span span = traces.values().iterator().next().poll();
+ assertThat(span.name(), is(spanName));
assertThat(tracedValues(span), containsInAnyOrder(this.getClass().getCanonicalName(), "RuntimeException: oops"));
}
@@ -129,13 +129,13 @@ public class ZipkinTracingAdviserTest {
assertThat(traces.size(), is(nThreads));
- for (Queue<zipkin.Span> queue : traces.values()) {
- zipkin.Span child = queue.poll();
- assertThat(child.name, is(spanName));
+ for (Queue<zipkin2.Span> queue : traces.values()) {
+ zipkin2.Span child = queue.poll();
+ assertThat(child.name(), is(spanName));
- zipkin.Span parent = queue.poll();
- assertThat(child.parentId, is(parent.id));
- assertThat(child.traceId, is(parent.traceId));
+ zipkin2.Span parent = queue.poll();
+ assertThat(child.parentId(), is(parent.id()));
+ assertThat(child.traceId(), is(parent.traceId()));
assertThat(tracedValues(child), contains(this.getClass().getCanonicalName()));
}
}
@@ -148,11 +148,11 @@ public class ZipkinTracingAdviserTest {
}
}
- private List<String> tracedValues(zipkin.Span spans) {
- return spans.binaryAnnotations.stream()
- .filter(span -> CALL_PATH.equals(span.key) || "error".equals(span.key))
- .filter(span -> span.value != null)
- .map(annotation -> new String(annotation.value))
+ private List<String> tracedValues(zipkin2.Span spans) {
+ return spans.tags().entrySet().stream()
+ .filter(span -> CALL_PATH.equals(span.getKey()) || "error".equals(span.getKey()))
+ .filter(span -> span.getValue() != null)
+ .map(annotation -> new String(annotation.getValue()))
.distinct()
.collect(Collectors.toList());
}
--
To stop receiving notification emails like this one, please contact
"commits@servicecomb.apache.org" <co...@servicecomb.apache.org>.