This is an automated email from the ASF dual-hosted git repository. jamesnetherton pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push: new 52021c1 CAMEL-16437: Upgrade OpenTelemetry to 1.2.0 52021c1 is described below commit 52021c1c16c69b5b9251e7d08cc665f2a5bb0df2 Author: James Netherton <jamesnether...@gmail.com> AuthorDate: Tue Jun 8 14:04:30 2021 +0100 CAMEL-16437: Upgrade OpenTelemetry to 1.2.0 --- camel-dependencies/pom.xml | 3 ++- components/camel-opentelemetry/pom.xml | 5 +++++ .../opentelemetry/OpenTelemetrySpanAdapter.java | 3 +-- .../camel/opentelemetry/OpenTelemetryTracer.java | 23 ++++++++++++---------- .../propagators/OpenTelemetryGetter.java | 4 ++-- .../propagators/OpenTelemetrySetter.java | 4 ++-- .../apache/camel/opentelemetry/SpanTestData.java | 8 ++++---- parent/pom.xml | 3 ++- 8 files changed, 31 insertions(+), 22 deletions(-) diff --git a/camel-dependencies/pom.xml b/camel-dependencies/pom.xml index 28c7ced..4f51d4e 100644 --- a/camel-dependencies/pom.xml +++ b/camel-dependencies/pom.xml @@ -445,7 +445,8 @@ <olingo4-version>4.8.0</olingo4-version> <openjpa-version>3.2.0</openjpa-version> <openstack4j-version>3.8</openstack4j-version> - <opentelemetry-version>0.15.0</opentelemetry-version> + <opentelemetry-alpha-version>${opentelemetry-version}-alpha</opentelemetry-alpha-version> + <opentelemetry-version>1.2.0</opentelemetry-version> <opentracing-tracerresolver-version>0.1.8</opentracing-tracerresolver-version> <opentracing-version>0.33.0</opentracing-version> <openwebbeans-version>1.7.3</openwebbeans-version> diff --git a/components/camel-opentelemetry/pom.xml b/components/camel-opentelemetry/pom.xml index 485dcf0..971291d 100644 --- a/components/camel-opentelemetry/pom.xml +++ b/components/camel-opentelemetry/pom.xml @@ -64,6 +64,11 @@ <version>${opentelemetry-version}</version> </dependency> <dependency> + <groupId>io.opentelemetry</groupId> + <artifactId>opentelemetry-semconv</artifactId> + <version>${opentelemetry-alpha-version}</version> + </dependency> + <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <scope>test</scope> diff --git a/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/OpenTelemetrySpanAdapter.java b/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/OpenTelemetrySpanAdapter.java index d357f42..2c0be0f 100644 --- a/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/OpenTelemetrySpanAdapter.java +++ b/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/OpenTelemetrySpanAdapter.java @@ -23,7 +23,6 @@ import io.opentelemetry.api.baggage.Baggage; import io.opentelemetry.api.baggage.BaggageBuilder; import io.opentelemetry.api.common.Attributes; import io.opentelemetry.api.common.AttributesBuilder; -import io.opentelemetry.context.Context; import io.opentelemetry.semconv.trace.attributes.SemanticAttributes; import org.apache.camel.tracing.SpanAdapter; import org.apache.camel.tracing.Tag; @@ -144,7 +143,7 @@ public class OpenTelemetrySpanAdapter implements SpanAdapter { public void setCorrelationContextItem(String key, String value) { BaggageBuilder builder = Baggage.builder(); if (baggage != null) { - builder = builder.setParent(Context.current().with(baggage)); + builder = Baggage.current().toBuilder(); } baggage = builder.put(key, value).build(); } diff --git a/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/OpenTelemetryTracer.java b/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/OpenTelemetryTracer.java index 624a10c..f7aff62 100644 --- a/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/OpenTelemetryTracer.java +++ b/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/OpenTelemetryTracer.java @@ -19,9 +19,11 @@ package org.apache.camel.opentelemetry; import java.util.Set; import io.opentelemetry.api.GlobalOpenTelemetry; +import io.opentelemetry.api.OpenTelemetry; import io.opentelemetry.api.baggage.Baggage; import io.opentelemetry.api.trace.Span; import io.opentelemetry.api.trace.SpanBuilder; +import io.opentelemetry.api.trace.SpanKind; import io.opentelemetry.api.trace.Tracer; import io.opentelemetry.context.Context; import org.apache.camel.Exchange; @@ -32,7 +34,6 @@ import org.apache.camel.tracing.ExtractAdapter; import org.apache.camel.tracing.InjectAdapter; import org.apache.camel.tracing.SpanAdapter; import org.apache.camel.tracing.SpanDecorator; -import org.apache.camel.tracing.SpanKind; import org.apache.camel.tracing.decorators.AbstractInternalSpanDecorator; @ManagedResource(description = "OpenTelemetryTracer") @@ -53,18 +54,18 @@ public class OpenTelemetryTracer extends org.apache.camel.tracing.Tracer { this.instrumentationName = instrumentationName; } - private Span.Kind mapToSpanKind(SpanKind kind) { + private SpanKind mapToSpanKind(org.apache.camel.tracing.SpanKind kind) { switch (kind) { case SPAN_KIND_CLIENT: - return Span.Kind.CLIENT; + return SpanKind.CLIENT; case SPAN_KIND_SERVER: - return Span.Kind.SERVER; + return SpanKind.SERVER; case CONSUMER: - return Span.Kind.CONSUMER; + return SpanKind.CONSUMER; case PRODUCER: - return Span.Kind.PRODUCER; + return SpanKind.PRODUCER; default: - return Span.Kind.SERVER; + return SpanKind.SERVER; } } @@ -83,12 +84,13 @@ public class OpenTelemetryTracer extends org.apache.camel.tracing.Tracer { if (tracer == null) { // No tracer is available, so setup NoopTracer - tracer = Tracer.getDefault(); + tracer = OpenTelemetry.noop().getTracer(instrumentationName); } } @Override - protected SpanAdapter startSendingEventSpan(String operationName, SpanKind kind, SpanAdapter parent) { + protected SpanAdapter startSendingEventSpan( + String operationName, org.apache.camel.tracing.SpanKind kind, SpanAdapter parent) { Baggage baggage = null; SpanBuilder builder = tracer.spanBuilder(operationName).setSpanKind(mapToSpanKind(kind)); if (parent != null) { @@ -102,7 +104,8 @@ public class OpenTelemetryTracer extends org.apache.camel.tracing.Tracer { @Override protected SpanAdapter startExchangeBeginSpan( - Exchange exchange, SpanDecorator sd, String operationName, SpanKind kind, SpanAdapter parent) { + Exchange exchange, SpanDecorator sd, String operationName, org.apache.camel.tracing.SpanKind kind, + SpanAdapter parent) { SpanBuilder builder = tracer.spanBuilder(operationName); Baggage baggage; if (parent != null) { diff --git a/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/propagators/OpenTelemetryGetter.java b/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/propagators/OpenTelemetryGetter.java index 856c721..0253376 100644 --- a/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/propagators/OpenTelemetryGetter.java +++ b/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/propagators/OpenTelemetryGetter.java @@ -16,10 +16,10 @@ */ package org.apache.camel.opentelemetry.propagators; -import io.opentelemetry.context.propagation.TextMapPropagator; +import io.opentelemetry.context.propagation.TextMapGetter; import org.apache.camel.tracing.ExtractAdapter; -public class OpenTelemetryGetter implements TextMapPropagator.Getter<ExtractAdapter> { +public class OpenTelemetryGetter implements TextMapGetter<ExtractAdapter> { ExtractAdapter adapter; diff --git a/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/propagators/OpenTelemetrySetter.java b/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/propagators/OpenTelemetrySetter.java index 3333898..fe56dc4 100644 --- a/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/propagators/OpenTelemetrySetter.java +++ b/components/camel-opentelemetry/src/main/java/org/apache/camel/opentelemetry/propagators/OpenTelemetrySetter.java @@ -18,10 +18,10 @@ package org.apache.camel.opentelemetry.propagators; import javax.annotation.Nullable; -import io.opentelemetry.context.propagation.TextMapPropagator; +import io.opentelemetry.context.propagation.TextMapSetter; import org.apache.camel.tracing.InjectAdapter; -public class OpenTelemetrySetter implements TextMapPropagator.Setter<InjectAdapter> { +public class OpenTelemetrySetter implements TextMapSetter<InjectAdapter> { @Override public void set(@Nullable InjectAdapter adapter, String key, String value) { adapter.put(key, value); diff --git a/components/camel-opentelemetry/src/test/java/org/apache/camel/opentelemetry/SpanTestData.java b/components/camel-opentelemetry/src/test/java/org/apache/camel/opentelemetry/SpanTestData.java index f7d8ba3..3c5fccd 100644 --- a/components/camel-opentelemetry/src/test/java/org/apache/camel/opentelemetry/SpanTestData.java +++ b/components/camel-opentelemetry/src/test/java/org/apache/camel/opentelemetry/SpanTestData.java @@ -22,14 +22,14 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import io.opentelemetry.api.trace.Span; +import io.opentelemetry.api.trace.SpanKind; public class SpanTestData { private String label; private String uri; private String operation; - private Span.Kind kind = Span.Kind.INTERNAL; + private SpanKind kind = SpanKind.INTERNAL; private int parentId = -1; private List<String> logMessages = new ArrayList<>(); private Map<String, String> tags = new HashMap<>(); @@ -63,11 +63,11 @@ public class SpanTestData { return this; } - public Span.Kind getKind() { + public SpanKind getKind() { return kind; } - public SpanTestData setKind(Span.Kind kind) { + public SpanTestData setKind(SpanKind kind) { this.kind = kind; return this; } diff --git a/parent/pom.xml b/parent/pom.xml index 9b89128..7b6598d 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -433,7 +433,8 @@ <ognl-version>3.1.12</ognl-version> <openjpa-version>3.2.0</openjpa-version> <openstack4j-version>3.8</openstack4j-version> - <opentelemetry-version>0.15.0</opentelemetry-version> + <opentelemetry-version>1.2.0</opentelemetry-version> + <opentelemetry-alpha-version>${opentelemetry-version}-alpha</opentelemetry-alpha-version> <opentracing-version>0.33.0</opentracing-version> <opentracing-tracerresolver-version>0.1.8</opentracing-tracerresolver-version> <optaplanner-version>8.6.0.Final</optaplanner-version>