Search in sources :

Example 66 with JaegerSpanContext

use of io.jaegertracing.internal.JaegerSpanContext in project cxf by apache.

the class OpenTracingTracingTest method testThatCurrentSpanIsAnnotatedWithKeyValue.

@Test
public void testThatCurrentSpanIsAnnotatedWithKeyValue() {
    final JaegerSpanContext spanId = fromRandom();
    final Response r = withTrace(createWebClient("/bookstore/book/1"), spanId).get();
    assertEquals(Status.OK.getStatusCode(), r.getStatus());
    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"));
}
Also used : Response(javax.ws.rs.core.Response) JaegerSpanContext(io.jaegertracing.internal.JaegerSpanContext) Test(org.junit.Test)

Example 67 with JaegerSpanContext

use of io.jaegertracing.internal.JaegerSpanContext in project cxf by apache.

the class OpenTracingTracingTest method testThatNewInnerSpanIsCreatedUsingAsyncInvocation.

@Test
public void testThatNewInnerSpanIsCreatedUsingAsyncInvocation() throws InterruptedException {
    final JaegerSpanContext spanId = fromRandom();
    final Response r = withTrace(createWebClient("/bookstore/books/async"), spanId).get();
    assertEquals(Status.OK.getStatusCode(), r.getStatus());
    await().atMost(Duration.ofSeconds(1L)).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()));
}
Also used : Response(javax.ws.rs.core.Response) JaegerSpanContext(io.jaegertracing.internal.JaegerSpanContext) Test(org.junit.Test)

Example 68 with JaegerSpanContext

use of io.jaegertracing.internal.JaegerSpanContext in project cxf by apache.

the class OpenTracingTracingTest method testThatNewInnerSpanIsCreated.

@Test
public void testThatNewInnerSpanIsCreated() throws Exception {
    final JaegerSpanContext spanId = fromRandom();
    final Map<String, List<String>> headers = new HashMap<>();
    tracer.inject(spanId, Builtin.HTTP_HEADERS, new TextMapInjectAdapter(headers));
    final BookStoreService service = createJaxWsService(headers);
    assertThat(service.getBooks().size(), equalTo(2));
    assertThat(REPORTER.getSpans().size(), equalTo(2));
    assertThat(REPORTER.getSpans().get(0).getOperationName(), equalTo("Get Books"));
    assertThat(REPORTER.getSpans().get(1).getOperationName(), equalTo("POST /BookStore"));
}
Also used : HashMap(java.util.HashMap) TextMapInjectAdapter(org.apache.cxf.tracing.opentracing.internal.TextMapInjectAdapter) BookStoreService(org.apache.cxf.systest.jaxws.tracing.BookStoreService) List(java.util.List) JaegerSpanContext(io.jaegertracing.internal.JaegerSpanContext) Test(org.junit.Test)

Aggregations

JaegerSpanContext (io.jaegertracing.internal.JaegerSpanContext)68 Test (org.junit.Test)59 HashMap (java.util.HashMap)20 TextMapAdapter (io.opentracing.propagation.TextMapAdapter)19 JaegerSpan (io.jaegertracing.internal.JaegerSpan)10 JaegerTracer (io.jaegertracing.internal.JaegerTracer)8 Response (javax.ws.rs.core.Response)7 TextMap (io.opentracing.propagation.TextMap)6 CodecConfiguration (io.jaegertracing.Configuration.CodecConfiguration)4 ReporterConfiguration (io.jaegertracing.Configuration.ReporterConfiguration)4 SamplerConfiguration (io.jaegertracing.Configuration.SamplerConfiguration)4 SenderConfiguration (io.jaegertracing.Configuration.SenderConfiguration)4 List (java.util.List)3 ObservedSpan (io.jaegertracing.crossdock.api.ObservedSpan)2 TestBinaryCarrier (io.jaegertracing.internal.propagation.TestBinaryCarrier)2 InMemoryReporter (io.jaegertracing.internal.reporters.InMemoryReporter)2 ArrayList (java.util.ArrayList)2 Map (java.util.Map)2 UseDataProvider (com.tngtech.java.junit.dataprovider.UseDataProvider)1 Endpoint (com.twitter.zipkin.thriftjava.Endpoint)1