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>'].