You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by re...@apache.org on 2018/01/19 02:06:00 UTC

[cxf] branch 3.1.x-fixes updated: [CXF-7608] Propagate trace ids as it lets log correlation to be consistent even if not sampling (#367)

This is an automated email from the ASF dual-hosted git repository.

reta pushed a commit to branch 3.1.x-fixes
in repository https://gitbox.apache.org/repos/asf/cxf.git


The following commit(s) were added to refs/heads/3.1.x-fixes by this push:
     new d381c0b  [CXF-7608] Propagate trace ids as it lets log correlation to be consistent even if not sampling (#367)
d381c0b is described below

commit d381c0bde58fd8a34615c2efdd128dbc49a643c9
Author: Aldo Sinanaj <al...@hotmail.com>
AuthorDate: Wed Jan 17 14:46:48 2018 +0100

    [CXF-7608] Propagate trace ids as it lets log correlation to be consistent even if not sampling (#367)
---
 .../cxf/tracing/brave/AbstractBraveClientProvider.java    |  2 +-
 .../apache/cxf/tracing/brave/AbstractBraveProvider.java   |  2 +-
 .../cxf/systest/jaxrs/tracing/brave/BraveTracingTest.java | 15 +++++++++++++++
 3 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/integration/tracing/tracing-brave/src/main/java/org/apache/cxf/tracing/brave/AbstractBraveClientProvider.java b/integration/tracing/tracing-brave/src/main/java/org/apache/cxf/tracing/brave/AbstractBraveClientProvider.java
index adce889..981b413 100644
--- a/integration/tracing/tracing-brave/src/main/java/org/apache/cxf/tracing/brave/AbstractBraveClientProvider.java
+++ b/integration/tracing/tracing-brave/src/main/java/org/apache/cxf/tracing/brave/AbstractBraveClientProvider.java
@@ -66,7 +66,7 @@ public abstract class AbstractBraveClientProvider extends AbstractTracingProvide
         // In case of asynchronous client invocation, the span should be detached as JAX-RS
         // client request / response filters are going to be executed in different threads.
         SpanInScope scope = null;
-        if (!isAsyncInvocation() && span != null && !span.isNoop()) {
+        if (!isAsyncInvocation() && span != null) {
             scope = brave.tracing().tracer().withSpanInScope(span);
         }
 
diff --git a/integration/tracing/tracing-brave/src/main/java/org/apache/cxf/tracing/brave/AbstractBraveProvider.java b/integration/tracing/tracing-brave/src/main/java/org/apache/cxf/tracing/brave/AbstractBraveProvider.java
index fdd71d7..45f6a35 100644
--- a/integration/tracing/tracing-brave/src/main/java/org/apache/cxf/tracing/brave/AbstractBraveProvider.java
+++ b/integration/tracing/tracing-brave/src/main/java/org/apache/cxf/tracing/brave/AbstractBraveProvider.java
@@ -77,7 +77,7 @@ public abstract class AbstractBraveProvider extends AbstractTracingProvider {
         if (isAsyncResponse() && span != null) {
            // Do not modify the current context span
             propagateContinuationSpan(span);
-        } else if (span != null && !span.isNoop()) {
+        } else if (span != null) {
             scope = brave.tracing().tracer().withSpanInScope(span);
         }
 
diff --git a/systests/tracing/src/test/java/org/apache/cxf/systest/jaxrs/tracing/brave/BraveTracingTest.java b/systests/tracing/src/test/java/org/apache/cxf/systest/jaxrs/tracing/brave/BraveTracingTest.java
index 85d4a17..5ae63cb 100644
--- a/systests/tracing/src/test/java/org/apache/cxf/systest/jaxrs/tracing/brave/BraveTracingTest.java
+++ b/systests/tracing/src/test/java/org/apache/cxf/systest/jaxrs/tracing/brave/BraveTracingTest.java
@@ -363,6 +363,21 @@ public class BraveTracingTest extends AbstractBusClientServerTestBase {
         assertThatTraceIsPresent(r, spanId);
     }
 
+    @Test
+    public void testThatNoSpansAreRecordedWhenNotSampled() {
+        final Tracing never = Tracing
+                .newBuilder()
+                .reporter(new TestSpanReporter())
+                .sampler(Sampler.NEVER_SAMPLE)
+                .build();
+
+        final Response r = createWebClient("/bookstore/books", new BraveClientProvider(never)).get();
+        assertEquals(Status.OK.getStatusCode(), r.getStatus());
+
+        assertThat(TestSpanReporter.getAllSpans().size(), equalTo(0));
+        assertThatTraceHeadersArePresent(r, false);
+    }
+
     protected WebClient createWebClient(final String url, final Object ... providers) {
         return WebClient
             .create("http://localhost:" + PORT + url, Arrays.asList(providers))

-- 
To stop receiving notification emails like this one, please contact
['"commits@cxf.apache.org" <co...@cxf.apache.org>'].