This is an automated email from the ASF dual-hosted git repository.
buhhunyx pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cxf.git
The following commit(s) were added to refs/heads/master by this push:
new 180fbbb CXF-8131: Upgrade to Jaeger 1.0.0
180fbbb is described below
commit 180fbbbd5571840b5f7a09ab7c0ce59605edd346
Author: Alexey Markevich <[email protected]>
AuthorDate: Fri Oct 11 17:43:37 2019 +0300
CXF-8131: Upgrade to Jaeger 1.0.0
---
parent/pom.xml | 2 +-
.../org/apache/cxf/systest/jaeger/TestSender.java | 66 -------
.../opentracing/OpenTracingTracingTest.java | 191 +++++++++------------
.../opentracing/OpenTracingTracingTest.java | 96 +++++------
4 files changed, 124 insertions(+), 231 deletions(-)
diff --git a/parent/pom.xml b/parent/pom.xml
index 22a9543..1df0a3b 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -132,7 +132,7 @@
<cxf.httpcomponents.core.version>4.4.12</cxf.httpcomponents.core.version>
<cxf.jackson.version>2.9.10</cxf.jackson.version>
<cxf.jackson.databind.version>2.9.10</cxf.jackson.databind.version>
- <cxf.jaeger.version>0.35.5</cxf.jaeger.version>
+ <cxf.jaeger.version>1.0.0</cxf.jaeger.version>
<cxf.james.mim4j.version>0.7.2</cxf.james.mim4j.version>
<cxf.javassist.version>3.25.0-GA</cxf.javassist.version>
<cxf.javax.annotation-api.version>1.3.2</cxf.javax.annotation-api.version>
diff --git
a/systests/tracing/src/test/java/org/apache/cxf/systest/jaeger/TestSender.java
b/systests/tracing/src/test/java/org/apache/cxf/systest/jaeger/TestSender.java
deleted file mode 100644
index d8ce62c..0000000
---
a/systests/tracing/src/test/java/org/apache/cxf/systest/jaeger/TestSender.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.cxf.systest.jaeger;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.concurrent.CountDownLatch;
-
-import io.jaegertracing.internal.JaegerSpan;
-import io.jaegertracing.internal.exceptions.SenderException;
-import io.jaegertracing.spi.Sender;
-
-public class TestSender implements Sender {
-
- private static final List<JaegerSpan> SPANS = new ArrayList<>(12);
-
- private static CountDownLatch synchro;
-
- @Override
- public int append(JaegerSpan span) throws SenderException {
- SPANS.add(span);
- if (synchro != null) {
- synchro.countDown();
- }
- return 0;
- }
-
- @Override
- public int flush() throws SenderException {
- return 0;
- }
-
- @Override
- public int close() throws SenderException {
- return 0;
- }
-
- public static List<JaegerSpan> getAllSpans() {
- return SPANS;
- }
-
- public static void clear() {
- SPANS.clear();
- setSynchro(null);
- }
-
- public static void setSynchro(CountDownLatch newSynchro) {
- synchro = newSynchro;
- }
-}
diff --git
a/systests/tracing/src/test/java/org/apache/cxf/systest/jaxrs/tracing/opentracing/OpenTracingTracingTest.java
b/systests/tracing/src/test/java/org/apache/cxf/systest/jaxrs/tracing/opentracing/OpenTracingTracingTest.java
index 10f324d..513ccf7 100644
---
a/systests/tracing/src/test/java/org/apache/cxf/systest/jaxrs/tracing/opentracing/OpenTracingTracingTest.java
+++
b/systests/tracing/src/test/java/org/apache/cxf/systest/jaxrs/tracing/opentracing/OpenTracingTracingTest.java
@@ -22,7 +22,6 @@ import java.net.MalformedURLException;
import java.util.Arrays;
import java.util.Iterator;
import java.util.Map.Entry;
-import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
@@ -40,7 +39,6 @@ import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;
import org.apache.cxf.jaxrs.client.WebClient;
import org.apache.cxf.jaxrs.lifecycle.SingletonResourceProvider;
import org.apache.cxf.jaxrs.model.AbstractResourceInfo;
-import org.apache.cxf.systest.jaeger.TestSender;
import org.apache.cxf.systest.jaxrs.tracing.BookStore;
import org.apache.cxf.testutil.common.AbstractClientServerTestBase;
import org.apache.cxf.testutil.common.AbstractTestServerBase;
@@ -48,13 +46,10 @@ import
org.apache.cxf.tracing.opentracing.jaxrs.OpenTracingClientProvider;
import org.apache.cxf.tracing.opentracing.jaxrs.OpenTracingFeature;
import org.awaitility.Duration;
-import io.jaegertracing.Configuration;
-import io.jaegertracing.Configuration.ReporterConfiguration;
-import io.jaegertracing.Configuration.SamplerConfiguration;
-import io.jaegertracing.Configuration.SenderConfiguration;
import io.jaegertracing.internal.JaegerSpanContext;
+import io.jaegertracing.internal.JaegerTracer;
+import io.jaegertracing.internal.reporters.InMemoryReporter;
import io.jaegertracing.internal.samplers.ConstSampler;
-import io.jaegertracing.spi.Sender;
import io.opentracing.Scope;
import io.opentracing.Span;
import io.opentracing.Tracer;
@@ -81,17 +76,12 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
private static final AtomicLong RANDOM = new AtomicLong();
- private final Tracer tracer = new Configuration("tracer-test-client")
- .withSampler(new
SamplerConfiguration().withType(ConstSampler.TYPE).withParam(1))
- .withReporter(new ReporterConfiguration().withSender(
- new SenderConfiguration() {
- @Override
- public Sender getSender() {
- return new TestSender();
- }
- }
- ))
- .getTracer();
+ private static final InMemoryReporter REPORTER = new InMemoryReporter();
+
+ private final Tracer tracer = new JaegerTracer.Builder("tracer-jaxrs")
+ .withSampler(new ConstSampler(true))
+ .withReporter(REPORTER)
+ .build();
public static class BraveServer extends AbstractTestServerBase {
@@ -99,17 +89,10 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
@Override
protected void run() {
- final Tracer tracer = new Configuration("tracer-test-server")
- .withSampler(new
SamplerConfiguration().withType(ConstSampler.TYPE).withParam(1))
- .withReporter(new ReporterConfiguration().withSender(
- new SenderConfiguration() {
- @Override
- public Sender getSender() {
- return new TestSender();
- }
- }
- ))
- .getTracer();
+ final Tracer tracer = new JaegerTracer.Builder("tracer-jaxrs")
+ .withSampler(new ConstSampler(true))
+ .withReporter(REPORTER)
+ .build();
final JAXRSServerFactoryBean sf = new JAXRSServerFactoryBean();
sf.setResourceClasses(BookStore.class);
@@ -135,7 +118,7 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
@After
public void tearDown() {
- TestSender.clear();
+ REPORTER.clear();
}
@Test
@@ -143,9 +126,9 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final Response r = createWebClient("/bookstore/books").get();
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- assertThat(TestSender.getAllSpans().size(), equalTo(2));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("GET /bookstore/books"));
+ assertThat(REPORTER.getSpans().toString(), REPORTER.getSpans().size(),
equalTo(2));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(), equalTo("Get
Books"));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(), equalTo("GET
/bookstore/books"));
}
@Test
@@ -155,9 +138,9 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final Response r = withTrace(createWebClient("/bookstore/books"),
spanId).get();
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- assertThat(TestSender.getAllSpans().size(), equalTo(2));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("GET /bookstore/books"));
+ assertThat(REPORTER.getSpans().size(), equalTo(2));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(), equalTo("Get
Books"));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(), equalTo("GET
/bookstore/books"));
}
@Test
@@ -167,9 +150,9 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final Response r = withTrace(createWebClient("/bookstore/book/1"),
spanId).get();
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- assertThat(TestSender.getAllSpans().size(), equalTo(1));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("GET /bookstore/book/1"));
- assertThat(TestSender.getAllSpans().get(0).getTags(),
hasItem("book-id", "1"));
+ assertThat(REPORTER.getSpans().size(), equalTo(1));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(), equalTo("GET
/bookstore/book/1"));
+ assertThat(REPORTER.getSpans().get(0).getTags(), hasItem("book-id",
"1"));
}
@Test
@@ -179,9 +162,9 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final Response r = withTrace(createWebClient("/bookstore/process"),
spanId).put("");
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- assertThat(TestSender.getAllSpans().size(), equalTo(2));
- assertThat(TestSender.getAllSpans(), hasSpan("Processing books",
hasItem("Processing started")));
- assertThat(TestSender.getAllSpans(), hasSpan("PUT
/bookstore/process"));
+ assertThat(REPORTER.getSpans().size(), equalTo(2));
+ assertThat(REPORTER.getSpans(), hasSpan("Processing books",
hasItem("Processing started")));
+ assertThat(REPORTER.getSpans(), hasSpan("PUT /bookstore/process"));
}
@Test
@@ -189,27 +172,25 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final Response r = createWebClient("/bookstore/books", new
OpenTracingClientProvider(tracer)).get();
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- assertThat(TestSender.getAllSpans().toString(),
TestSender.getAllSpans().size(), equalTo(3));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(0).getReferences(),
not(empty()));
+ assertThat(REPORTER.getSpans().toString(), REPORTER.getSpans().size(),
equalTo(3));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(), equalTo("Get
Books"));
+ assertThat(REPORTER.getSpans().get(0).getReferences(), not(empty()));
}
@Test
public void testThatNewInnerSpanIsCreatedUsingAsyncInvocation() throws
InterruptedException {
- final CountDownLatch synchro = new CountDownLatch(2);
- TestSender.setSynchro(synchro);
-
final JaegerSpanContext spanId = fromRandom();
final Response r =
withTrace(createWebClient("/bookstore/books/async"), spanId).get();
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- synchro.await(1L, TimeUnit.MINUTES);
- assertThat(TestSender.getAllSpans().size(), equalTo(2));
- assertEquals("Processing books",
TestSender.getAllSpans().get(0).getOperationName());
- assertEquals("GET /bookstore/books/async",
TestSender.getAllSpans().get(1).getOperationName());
- assertThat(TestSender.getAllSpans().get(1).getReferences(),
not(empty()));
-
assertThat(TestSender.getAllSpans().get(1).getReferences().get(0).getSpanContext().getSpanId(),
+ await().atMost(Duration.ONE_SECOND).until(()->
REPORTER.getSpans().size() == 2);
+
+ assertThat(REPORTER.getSpans().size(), equalTo(2));
+ assertEquals("Processing books",
REPORTER.getSpans().get(0).getOperationName());
+ assertEquals("GET /bookstore/books/async",
REPORTER.getSpans().get(1).getOperationName());
+ assertThat(REPORTER.getSpans().get(1).getReferences(), not(empty()));
+
assertThat(REPORTER.getSpans().get(1).getReferences().get(0).getSpanContext().getSpanId(),
equalTo(spanId.getSpanId()));
}
@@ -220,39 +201,35 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final Response r =
withTrace(createWebClient("/bookstore/books/async/notrace"), spanId).get();
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- assertThat(TestSender.getAllSpans().size(), equalTo(1));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("GET /bookstore/books/async/notrace"));
+ assertThat(REPORTER.getSpans().size(), equalTo(1));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(), equalTo("GET
/bookstore/books/async/notrace"));
}
@Test
public void testThatNewSpanIsCreatedUsingAsyncInvocation() throws
InterruptedException {
- final CountDownLatch synchro = new CountDownLatch(2);
- TestSender.setSynchro(synchro);
-
final Response r = createWebClient("/bookstore/books/async").get();
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- synchro.await(1L, TimeUnit.MINUTES);
- assertThat(TestSender.getAllSpans().size(), equalTo(2));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Processing books"));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("GET /bookstore/books/async"));
+ await().atMost(Duration.ONE_SECOND).until(()->
REPORTER.getSpans().size() == 2);
+
+ assertThat(REPORTER.getSpans().size(), equalTo(2));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(),
equalTo("Processing books"));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(), equalTo("GET
/bookstore/books/async"));
}
@Test
public void testThatNewSpanIsCreatedWhenNotProvidedUsingAsyncClient()
throws Exception {
- final CountDownLatch synchro = new CountDownLatch(3);
- TestSender.setSynchro(synchro);
-
final WebClient client = createWebClient("/bookstore/books", new
OpenTracingClientProvider(tracer));
final Response r = client.async().get().get(1L, TimeUnit.SECONDS);
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- synchro.await(1L, TimeUnit.MINUTES);
- assertThat(TestSender.getAllSpans().size(), equalTo(3));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("GET /bookstore/books"));
- assertThat(TestSender.getAllSpans().get(2).getOperationName(),
equalTo("GET " + client.getCurrentURI()));
+ await().atMost(Duration.ONE_SECOND).until(()->
REPORTER.getSpans().size() == 3);
+
+ assertThat(REPORTER.getSpans().size(), equalTo(3));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(), equalTo("Get
Books"));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(), equalTo("GET
/bookstore/books"));
+ assertThat(REPORTER.getSpans().get(2).getOperationName(), equalTo("GET
" + client.getCurrentURI()));
}
@Test
@@ -267,17 +244,17 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
.map(this::get)
.forEach(r -> assertEquals(Status.OK.getStatusCode(),
r.getStatus()));
- assertThat(TestSender.getAllSpans().size(), equalTo(12));
+ assertThat(REPORTER.getSpans().size(), equalTo(12));
IntStream
.range(0, 4)
.map(index -> index * 3)
.forEach(index -> {
-
assertThat(TestSender.getAllSpans().get(index).getOperationName(),
+ assertThat(REPORTER.getSpans().get(index).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(index +
1).getOperationName(),
+ assertThat(REPORTER.getSpans().get(index +
1).getOperationName(),
equalTo("GET /bookstore/books"));
- assertThat(TestSender.getAllSpans().get(index +
2).getOperationName(),
+ assertThat(REPORTER.getSpans().get(index +
2).getOperationName(),
equalTo("GET " + client.getCurrentURI()));
});
}
@@ -293,17 +270,17 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
.mapToObj(index -> client.get())
.forEach(r -> assertEquals(Status.OK.getStatusCode(),
r.getStatus()));
- assertEquals(TestSender.getAllSpans().toString(), 12,
TestSender.getAllSpans().size());
+ assertEquals(REPORTER.getSpans().toString(), 12,
REPORTER.getSpans().size());
IntStream
.range(0, 4)
.map(index -> index * 3)
.forEach(index -> {
-
assertThat(TestSender.getAllSpans().get(index).getOperationName(),
+ assertThat(REPORTER.getSpans().get(index).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(index +
1).getOperationName(),
+ assertThat(REPORTER.getSpans().get(index +
1).getOperationName(),
equalTo("GET /bookstore/books"));
- assertThat(TestSender.getAllSpans().get(index +
2).getOperationName(),
+ assertThat(REPORTER.getSpans().get(index +
2).getOperationName(),
equalTo("GET " + client.getCurrentURI()));
});
}
@@ -317,23 +294,23 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final Response r = client.get();
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- assertEquals(TestSender.getAllSpans().toString(), 3,
TestSender.getAllSpans().size());
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(0).getReferences(),
not(empty()));
- assertThat(TestSender.getAllSpans().get(1).getReferences(),
not(empty()));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("GET /bookstore/books"));
- assertThat(TestSender.getAllSpans().get(2).getOperationName(),
equalTo("GET " + client.getCurrentURI()));
- assertThat(TestSender.getAllSpans().get(2).getReferences(),
not(empty()));
+ assertEquals(REPORTER.getSpans().toString(), 3,
REPORTER.getSpans().size());
+ assertThat(REPORTER.getSpans().get(0).getOperationName(),
equalTo("Get Books"));
+ assertThat(REPORTER.getSpans().get(0).getReferences(),
not(empty()));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(),
equalTo("GET /bookstore/books"));
+ assertThat(REPORTER.getSpans().get(1).getReferences(),
not(empty()));
+ assertThat(REPORTER.getSpans().get(2).getOperationName(),
equalTo("GET " + client.getCurrentURI()));
+ assertThat(REPORTER.getSpans().get(2).getReferences(),
not(empty()));
} finally {
span.finish();
}
// Await till flush happens, usually every second
- await().atMost(Duration.ONE_SECOND).until(()->
TestSender.getAllSpans().size() == 4);
+ await().atMost(Duration.ONE_SECOND).until(()->
REPORTER.getSpans().size() == 4);
- assertThat(TestSender.getAllSpans().size(), equalTo(4));
- assertThat(TestSender.getAllSpans().get(3).getOperationName(),
equalTo("test span"));
- assertThat(TestSender.getAllSpans().get(3).getReferences(), empty());
+ assertThat(REPORTER.getSpans().size(), equalTo(4));
+ assertThat(REPORTER.getSpans().get(3).getOperationName(),
equalTo("test span"));
+ assertThat(REPORTER.getSpans().get(3).getReferences(), empty());
}
@Test
@@ -342,31 +319,29 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final Span span = tracer.buildSpan("test span").start();
try (Scope scope = tracer.scopeManager().activate(span)) {
- final CountDownLatch synchro = new CountDownLatch(3);
- TestSender.setSynchro(synchro);
-
final Response r = client.async().get().get(1L, TimeUnit.MINUTES);
assertEquals(Status.OK.getStatusCode(), r.getStatus());
assertThat(tracer.activeSpan().context(), equalTo(span.context()));
- synchro.await(1L, TimeUnit.MINUTES);
- assertThat(TestSender.getAllSpans().size(), equalTo(3));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(0).getReferences(),
not(empty()));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("GET /bookstore/books"));
- assertThat(TestSender.getAllSpans().get(1).getReferences(),
not(empty()));
- assertThat(TestSender.getAllSpans().get(2).getOperationName(),
equalTo("GET " + client.getCurrentURI()));
- assertThat(TestSender.getAllSpans().get(2).getReferences(),
not(empty()));
+ await().atMost(Duration.ONE_SECOND).until(()->
REPORTER.getSpans().size() == 3);
+
+ assertThat(REPORTER.getSpans().size(), equalTo(3));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(),
equalTo("Get Books"));
+ assertThat(REPORTER.getSpans().get(0).getReferences(),
not(empty()));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(),
equalTo("GET /bookstore/books"));
+ assertThat(REPORTER.getSpans().get(1).getReferences(),
not(empty()));
+ assertThat(REPORTER.getSpans().get(2).getOperationName(),
equalTo("GET " + client.getCurrentURI()));
+ assertThat(REPORTER.getSpans().get(2).getReferences(),
not(empty()));
} finally {
span.finish();
}
// Await till flush happens, usually every second
- await().atMost(Duration.ONE_SECOND).until(()->
TestSender.getAllSpans().size() == 4);
+ await().atMost(Duration.ONE_SECOND).until(()->
REPORTER.getSpans().size() == 4);
- assertThat(TestSender.getAllSpans().size(), equalTo(4));
- assertThat(TestSender.getAllSpans().get(3).getOperationName(),
equalTo("test span"));
- assertThat(TestSender.getAllSpans().get(3).getReferences(), empty());
+ assertThat(REPORTER.getSpans().size(), equalTo(4));
+ assertThat(REPORTER.getSpans().get(3).getOperationName(),
equalTo("test span"));
+ assertThat(REPORTER.getSpans().get(3).getReferences(), empty());
}
@Test
@@ -376,9 +351,9 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final Response r =
withTrace(createWebClient("/bookstore/books/pseudo-async"), spanId).get();
assertEquals(Status.OK.getStatusCode(), r.getStatus());
- assertThat(TestSender.getAllSpans().size(), equalTo(2));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("GET /bookstore/books/pseudo-async"));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Processing books"));
+ assertThat(REPORTER.getSpans().size(), equalTo(2));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(), equalTo("GET
/bookstore/books/pseudo-async"));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(),
equalTo("Processing books"));
}
private static WebClient createWebClient(final String path, final Object
... providers) {
diff --git
a/systests/tracing/src/test/java/org/apache/cxf/systest/jaxws/tracing/opentracing/OpenTracingTracingTest.java
b/systests/tracing/src/test/java/org/apache/cxf/systest/jaxws/tracing/opentracing/OpenTracingTracingTest.java
index 386226f..52130d8 100644
---
a/systests/tracing/src/test/java/org/apache/cxf/systest/jaxws/tracing/opentracing/OpenTracingTracingTest.java
+++
b/systests/tracing/src/test/java/org/apache/cxf/systest/jaxws/tracing/opentracing/OpenTracingTracingTest.java
@@ -34,7 +34,6 @@ import org.apache.cxf.frontend.ClientProxy;
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import org.apache.cxf.jaxws.JaxWsServerFactoryBean;
import org.apache.cxf.message.Message;
-import org.apache.cxf.systest.jaeger.TestSender;
import org.apache.cxf.systest.jaxws.tracing.BookStoreService;
import org.apache.cxf.testutil.common.AbstractClientServerTestBase;
import org.apache.cxf.testutil.common.AbstractTestServerBase;
@@ -43,13 +42,10 @@ import
org.apache.cxf.tracing.opentracing.OpenTracingFeature;
import org.apache.cxf.tracing.opentracing.internal.TextMapInjectAdapter;
import org.awaitility.Duration;
-import io.jaegertracing.Configuration;
-import io.jaegertracing.Configuration.ReporterConfiguration;
-import io.jaegertracing.Configuration.SamplerConfiguration;
-import io.jaegertracing.Configuration.SenderConfiguration;
import io.jaegertracing.internal.JaegerSpanContext;
+import io.jaegertracing.internal.JaegerTracer;
+import io.jaegertracing.internal.reporters.InMemoryReporter;
import io.jaegertracing.internal.samplers.ConstSampler;
-import io.jaegertracing.spi.Sender;
import io.opentracing.Scope;
import io.opentracing.Span;
import io.opentracing.Tracer;
@@ -75,17 +71,12 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
private static final AtomicLong RANDOM = new AtomicLong();
- private final Tracer tracer = new Configuration("tracer")
- .withSampler(new
SamplerConfiguration().withType(ConstSampler.TYPE).withParam(1))
- .withReporter(new ReporterConfiguration().withSender(
- new SenderConfiguration() {
- @Override
- public Sender getSender() {
- return new TestSender();
- }
- }
- ))
- .getTracer();
+ private static final InMemoryReporter REPORTER = new InMemoryReporter();
+
+ private final Tracer tracer = new JaegerTracer.Builder("tracer-jaxws")
+ .withSampler(new ConstSampler(true))
+ .withReporter(REPORTER)
+ .build();
public static class BraveServer extends AbstractTestServerBase {
@@ -93,17 +84,10 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
@Override
protected void run() {
- final Tracer tracer = new Configuration("book-store")
- .withSampler(new
SamplerConfiguration().withType(ConstSampler.TYPE).withParam(1))
- .withReporter(new ReporterConfiguration().withSender(
- new SenderConfiguration() {
- @Override
- public Sender getSender() {
- return new TestSender();
- }
- }
- ))
- .getTracer();
+ final Tracer tracer = new JaegerTracer.Builder("tracer-jaxws")
+ .withSampler(new ConstSampler(true))
+ .withReporter(REPORTER)
+ .build();
GlobalTracer.registerIfAbsent(tracer);
final JaxWsServerFactoryBean sf = new JaxWsServerFactoryBean();
@@ -128,7 +112,7 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
@After
public void tearDown() {
- TestSender.clear();
+ REPORTER.clear();
}
@Test
@@ -136,9 +120,9 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final BookStoreService service = createJaxWsService();
assertThat(service.getBooks().size(), equalTo(2));
- assertThat(TestSender.getAllSpans().size(), equalTo(2));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("POST /BookStore"));
+ assertThat(REPORTER.getSpans().size(), equalTo(2));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(), equalTo("Get
Books"));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(),
equalTo("POST /BookStore"));
}
@Test
@@ -151,9 +135,9 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final BookStoreService service = createJaxWsService(headers);
assertThat(service.getBooks().size(), equalTo(2));
- assertThat(TestSender.getAllSpans().size(), equalTo(2));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("POST /BookStore"));
+ assertThat(REPORTER.getSpans().size(), equalTo(2));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(), equalTo("Get
Books"));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(),
equalTo("POST /BookStore"));
}
@Test
@@ -161,11 +145,11 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
final BookStoreService service = createJaxWsService(new
OpenTracingClientFeature(tracer));
assertThat(service.getBooks().size(), equalTo(2));
- assertThat(TestSender.getAllSpans().size(), equalTo(3));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(0).getReferences(),
not(empty()));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("POST /BookStore"));
- assertThat(TestSender.getAllSpans().get(2).getOperationName(),
+ assertThat(REPORTER.getSpans().size(), equalTo(3));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(), equalTo("Get
Books"));
+ assertThat(REPORTER.getSpans().get(0).getReferences(), not(empty()));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(),
equalTo("POST /BookStore"));
+ assertThat(REPORTER.getSpans().get(2).getOperationName(),
equalTo("POST http://localhost:" + PORT + "/BookStore"));
}
@@ -178,24 +162,24 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
assertThat(service.getBooks().size(), equalTo(2));
assertThat(tracer.activeSpan(), not(nullValue()));
- assertThat(TestSender.getAllSpans().size(), equalTo(3));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("Get Books"));
- assertThat(TestSender.getAllSpans().get(0).getReferences(),
not(empty()));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
equalTo("POST /BookStore"));
- assertThat(TestSender.getAllSpans().get(1).getReferences(),
not(empty()));
- assertThat(TestSender.getAllSpans().get(2).getOperationName(),
+ assertThat(REPORTER.getSpans().size(), equalTo(3));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(),
equalTo("Get Books"));
+ assertThat(REPORTER.getSpans().get(0).getReferences(),
not(empty()));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(),
equalTo("POST /BookStore"));
+ assertThat(REPORTER.getSpans().get(1).getReferences(),
not(empty()));
+ assertThat(REPORTER.getSpans().get(2).getOperationName(),
equalTo("POST http://localhost:" + PORT + "/BookStore"));
- assertThat(TestSender.getAllSpans().get(2).getReferences(),
not(empty()));
+ assertThat(REPORTER.getSpans().get(2).getReferences(),
not(empty()));
} finally {
span.finish();
}
// Await till flush happens, usually every second
- await().atMost(Duration.ONE_SECOND).until(()->
TestSender.getAllSpans().size() == 4);
+ await().atMost(Duration.ONE_SECOND).until(()->
REPORTER.getSpans().size() == 4);
- assertThat(TestSender.getAllSpans().size(), equalTo(4));
- assertThat(TestSender.getAllSpans().get(3).getOperationName(),
equalTo("test span"));
- assertThat(TestSender.getAllSpans().get(3).getReferences(), empty());
+ assertThat(REPORTER.getSpans().size(), equalTo(4));
+ assertThat(REPORTER.getSpans().get(3).getOperationName(),
equalTo("test span"));
+ assertThat(REPORTER.getSpans().get(3).getReferences(), empty());
}
@Test
@@ -209,8 +193,8 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
/* expected exception */
}
- assertThat(TestSender.getAllSpans().size(), equalTo(1));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("POST /BookStore"));
+ assertThat(REPORTER.getSpans().size(), equalTo(1));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(),
equalTo("POST /BookStore"));
}
@Test
@@ -224,9 +208,9 @@ public class OpenTracingTracingTest extends
AbstractClientServerTestBase {
/* expected exception */
}
- assertThat(TestSender.getAllSpans().size(), equalTo(2));
- assertThat(TestSender.getAllSpans().get(0).getOperationName(),
equalTo("POST /BookStore"));
- assertThat(TestSender.getAllSpans().get(1).getOperationName(),
+ assertThat(REPORTER.getSpans().size(), equalTo(2));
+ assertThat(REPORTER.getSpans().get(0).getOperationName(),
equalTo("POST /BookStore"));
+ assertThat(REPORTER.getSpans().get(1).getOperationName(),
equalTo("POST http://localhost:" + PORT + "/BookStore"));
}