use of org.apache.cxf.systest.jaxws.tracing.BookStoreService in project cxf by apache.
the class HTraceTracingTest method testThatNewInnerSpanIsCreated.
@Test
public void testThatNewInnerSpanIsCreated() throws MalformedURLException {
final SpanId spanId = SpanId.fromRandom();
final Map<String, List<String>> headers = new HashMap<>();
headers.put(TracerHeaders.DEFAULT_HEADER_SPAN_ID, Arrays.asList(spanId.toString()));
final BookStoreService service = createJaxWsService(headers);
assertThat(service.getBooks().size(), equalTo(2));
assertThat(TestSpanReceiver.getAllSpans().size(), equalTo(2));
assertThat(TestSpanReceiver.getAllSpans().get(0).getDescription(), equalTo("Get Books"));
assertThat(TestSpanReceiver.getAllSpans().get(1).getDescription(), equalTo("POST /BookStore"));
final Map<String, List<String>> response = getResponseHeaders(service);
assertThat(response.get(TracerHeaders.DEFAULT_HEADER_SPAN_ID), hasItems(spanId.toString()));
}
use of org.apache.cxf.systest.jaxws.tracing.BookStoreService in project cxf by apache.
the class HTraceTracingTest method testThatNewChildSpanIsCreatedWhenParentIsProvided.
@Test
public void testThatNewChildSpanIsCreatedWhenParentIsProvided() throws MalformedURLException {
final Tracer tracer = createTracer();
final BookStoreService service = createJaxWsService(new Configurator() {
@Override
public void configure(final JaxWsProxyFactoryBean factory) {
factory.getOutInterceptors().add(new HTraceClientStartInterceptor(tracer));
factory.getInInterceptors().add(new HTraceClientStopInterceptor());
}
});
assertThat(service.getBooks().size(), equalTo(2));
assertThat(TestSpanReceiver.getAllSpans().size(), equalTo(3));
assertThat(TestSpanReceiver.getAllSpans().get(0).getDescription(), equalTo("Get Books"));
assertThat(TestSpanReceiver.getAllSpans().get(0).getParents().length, equalTo(1));
assertThat(TestSpanReceiver.getAllSpans().get(1).getDescription(), equalTo("POST /BookStore"));
assertThat(TestSpanReceiver.getAllSpans().get(2).getDescription(), equalTo("POST http://localhost:" + PORT + "/BookStore"));
final Map<String, List<String>> response = getResponseHeaders(service);
assertThat(response.get(TracerHeaders.DEFAULT_HEADER_SPAN_ID), not(nullValue()));
}
use of org.apache.cxf.systest.jaxws.tracing.BookStoreService in project cxf by apache.
the class HTraceTracingTest method createJaxWsService.
private BookStoreService createJaxWsService(final Map<String, List<String>> headers, final Configurator configurator) throws MalformedURLException {
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.getOutInterceptors().add(new LoggingOutInterceptor());
factory.getInInterceptors().add(new LoggingInInterceptor());
factory.setServiceClass(BookStoreService.class);
factory.setAddress("http://localhost:" + PORT + "/BookStore");
if (configurator != null) {
configurator.configure(factory);
}
final BookStoreService service = (BookStoreService) factory.create();
final Client proxy = ClientProxy.getClient(service);
proxy.getRequestContext().put(Message.PROTOCOL_HEADERS, headers);
return service;
}
use of org.apache.cxf.systest.jaxws.tracing.BookStoreService in project cxf by apache.
the class BraveTracingTest method createJaxWsService.
private BookStoreService createJaxWsService(final Map<String, List<String>> headers, final Feature feature) {
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.getOutInterceptors().add(new LoggingOutInterceptor());
factory.getInInterceptors().add(new LoggingInInterceptor());
factory.setServiceClass(BookStoreService.class);
factory.setAddress("http://localhost:" + PORT + "/BookStore");
if (feature != null) {
factory.getFeatures().add(feature);
}
final BookStoreService service = (BookStoreService) factory.create();
final Client proxy = ClientProxy.getClient(service);
proxy.getRequestContext().put(Message.PROTOCOL_HEADERS, headers);
return service;
}
use of org.apache.cxf.systest.jaxws.tracing.BookStoreService in project cxf by apache.
the class BraveTracingTest method testThatNewInnerSpanIsCreated.
@Test
public void testThatNewInnerSpanIsCreated() throws Exception {
final Random random = new Random();
final SpanId spanId = new SpanId().traceId(random.nextLong()).parentId(random.nextLong()).spanId(random.nextLong()).sampled(true);
final Map<String, List<String>> headers = new HashMap<>();
headers.put(SPAN_ID_NAME, Arrays.asList(Long.toString(spanId.spanId())));
headers.put(TRACE_ID_NAME, Arrays.asList(Long.toString(spanId.traceId())));
headers.put(SAMPLED_NAME, Arrays.asList(Boolean.toString(spanId.sampled())));
headers.put(PARENT_SPAN_ID_NAME, Arrays.asList(Long.toString(spanId.parentId())));
final BookStoreService service = createJaxWsService(headers);
assertThat(service.getBooks().size(), equalTo(2));
assertThat(TestSpanReporter.getAllSpans().size(), equalTo(2));
assertThat(TestSpanReporter.getAllSpans().get(0).name(), equalTo("get books"));
assertThat(TestSpanReporter.getAllSpans().get(1).name(), equalTo("post /bookstore"));
}
Aggregations