Use contrib AwsXrayPropagator (#7234)

Reflects move of `AwsXrayPropagator` to
[opentelemetry-java-contrib/aws-xray-propagator](https://github.com/open-telemetry/opentelemetry-java-contrib/tree/main/aws-xray-propagator).
This commit is contained in:
jack-berg 2022-11-21 13:31:17 -06:00 committed by GitHub
parent 72cc791b39
commit 94ba33e395
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
25 changed files with 60 additions and 57 deletions

View File

@ -89,6 +89,7 @@ val DEPENDENCIES = listOf(
"commons-logging:commons-logging:1.2", "commons-logging:commons-logging:1.2",
"commons-validator:commons-validator:1.7", "commons-validator:commons-validator:1.7",
"io.netty:netty:3.10.6.Final", "io.netty:netty:3.10.6.Final",
"io.opentelemetry.contrib:opentelemetry-aws-xray-propagator:1.20.0-alpha",
"io.opentelemetry.proto:opentelemetry-proto:0.19.0-alpha", "io.opentelemetry.proto:opentelemetry-proto:0.19.0-alpha",
"org.assertj:assertj-core:3.23.1", "org.assertj:assertj-core:3.23.1",
"org.awaitility:awaitility:4.2.0", "org.awaitility:awaitility:4.2.0",

View File

@ -12,5 +12,5 @@ dependencies {
testImplementation("org.apache.camel:camel-http:2.20.1") testImplementation("org.apache.camel:camel-http:2.20.1")
testImplementation("io.opentelemetry:opentelemetry-extension-trace-propagators") testImplementation("io.opentelemetry:opentelemetry-extension-trace-propagators")
testImplementation("io.opentelemetry:opentelemetry-extension-aws") testImplementation("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
} }

View File

@ -15,7 +15,7 @@ val camelversion = "2.20.1" // first version that the tests pass on
dependencies { dependencies {
library("org.apache.camel:camel-core:$camelversion") library("org.apache.camel:camel-core:$camelversion")
implementation("io.opentelemetry:opentelemetry-extension-aws") implementation("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
// without adding this dependency, javadoc fails: // without adding this dependency, javadoc fails:
// warning: unknown enum constant XmlAccessType.PROPERTY // warning: unknown enum constant XmlAccessType.PROPERTY

View File

@ -26,6 +26,6 @@ public class ApacheCamelInstrumentationModule extends InstrumentationModule {
@Override @Override
public boolean isHelperClass(String className) { public boolean isHelperClass(String className) {
return className.startsWith("io.opentelemetry.extension.aws."); return className.startsWith("io.opentelemetry.contrib.awsxray.");
} }
} }

View File

@ -9,6 +9,7 @@ import io.opentelemetry.api.GlobalOpenTelemetry;
import io.opentelemetry.context.Context; import io.opentelemetry.context.Context;
import io.opentelemetry.context.propagation.TextMapGetter; import io.opentelemetry.context.propagation.TextMapGetter;
import io.opentelemetry.context.propagation.TextMapSetter; import io.opentelemetry.context.propagation.TextMapSetter;
import io.opentelemetry.contrib.awsxray.propagator.AwsXrayPropagator;
import java.util.Collections; import java.util.Collections;
import java.util.Map; import java.util.Map;
import org.apache.camel.Endpoint; import org.apache.camel.Endpoint;
@ -27,9 +28,8 @@ final class CamelPropagationUtil {
return endpoint.getClass().getName().endsWith("SqsEndpoint"); return endpoint.getClass().getName().endsWith("SqsEndpoint");
} }
@SuppressWarnings("deprecation") // deprecated class to be updated once published in new location
private static Context extractAwsPropagationParent(Map<String, Object> exchangeHeaders) { private static Context extractAwsPropagationParent(Map<String, Object> exchangeHeaders) {
return io.opentelemetry.extension.aws.AwsXrayPropagator.getInstance() return AwsXrayPropagator.getInstance()
.extract( .extract(
Context.current(), Context.current(),
Collections.singletonMap("X-Amzn-Trace-Id", exchangeHeaders.get("AWSTraceHeader")), Collections.singletonMap("X-Amzn-Trace-Id", exchangeHeaders.get("AWSTraceHeader")),

View File

@ -20,7 +20,7 @@ public class AwsLambdaInstrumentationModule extends InstrumentationModule {
@Override @Override
public boolean isHelperClass(String className) { public boolean isHelperClass(String className) {
return className.startsWith("io.opentelemetry.extension.aws."); return className.startsWith("io.opentelemetry.contrib.awsxray.");
} }
@Override @Override

View File

@ -47,14 +47,16 @@ A `SERVER` span will be created with the name you specify for the function when
In addition, it is recommended to set up X-Ray trace propagation to be able to In addition, it is recommended to set up X-Ray trace propagation to be able to
link to tracing information provided by Lambda itself. To do so, add a dependency on link to tracing information provided by Lambda itself. To do so, add a dependency on
`opentelemetry-extension-tracepropagators`. Make sure the version matches the version of the SDK `io.opentelemetry.contrib:opentelemetry-aws-xray-propagator`.
you use.
Replace `OPENTELEMETRY_VERSION` with the [latest
release](https://search.maven.org/search?q=g:io.opentelemetry.contrib%20AND%20a:opentelemetry-aws-xray-propagator).
Gradle: Gradle:
```kotlin ```kotlin
dependencies { dependencies {
implementation("io.opentelemetry:opentelemetry-extension-trace-propagators:0.8.0") implementation("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator:OPENTELEMETRY_VERSION")
} }
``` ```
@ -63,9 +65,9 @@ Maven:
```xml ```xml
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>io.opentelemetry</groupId> <groupId>io.opentelemetry.contrib</groupId>
<artifactId>opentelemetry-extension-trace-propagators</artifactId> <artifactId>opentelemetry-aws-xray-propagator</artifactId>
<version>0.8.0</version> <version>OPENTELEMETRY_VERSION</version>
</dependency> </dependency>
</dependencies> </dependencies>
``` ```

View File

@ -11,7 +11,7 @@ dependencies {
library("com.amazonaws:aws-lambda-java-core:1.0.0") library("com.amazonaws:aws-lambda-java-core:1.0.0")
implementation("io.opentelemetry:opentelemetry-extension-aws") implementation("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
// We do lightweight parsing of JSON to extract HTTP headers from requests for propagation. // We do lightweight parsing of JSON to extract HTTP headers from requests for propagation.
// This will be commonly needed even for users that don't use events, but luckily it's not too big. // This will be commonly needed even for users that don't use events, but luckily it's not too big.

View File

@ -11,6 +11,7 @@ import io.opentelemetry.api.trace.Span;
import io.opentelemetry.api.trace.SpanContext; import io.opentelemetry.api.trace.SpanContext;
import io.opentelemetry.context.Context; import io.opentelemetry.context.Context;
import io.opentelemetry.context.propagation.TextMapGetter; import io.opentelemetry.context.propagation.TextMapGetter;
import io.opentelemetry.contrib.awsxray.propagator.AwsXrayPropagator;
import java.util.Collections; import java.util.Collections;
import java.util.Locale; import java.util.Locale;
import java.util.Map; import java.util.Map;
@ -53,9 +54,8 @@ public final class ParentContextExtractor {
// lower-case map getter used for extraction // lower-case map getter used for extraction
static final String AWS_TRACE_HEADER_PROPAGATOR_KEY = "x-amzn-trace-id"; static final String AWS_TRACE_HEADER_PROPAGATOR_KEY = "x-amzn-trace-id";
@SuppressWarnings("deprecation") // deprecated class to be updated once published in new location
public static Context fromXrayHeader(String parentHeader) { public static Context fromXrayHeader(String parentHeader) {
return io.opentelemetry.extension.aws.AwsXrayPropagator.getInstance() return AwsXrayPropagator.getInstance()
.extract( .extract(
// see BaseTracer#extract() on why we're using root() here // see BaseTracer#extract() on why we're using root() here
Context.root(), Context.root(),

View File

@ -15,6 +15,7 @@ import static org.mockito.Mockito.when;
import io.opentelemetry.api.GlobalOpenTelemetry; import io.opentelemetry.api.GlobalOpenTelemetry;
import io.opentelemetry.api.OpenTelemetry; import io.opentelemetry.api.OpenTelemetry;
import io.opentelemetry.context.propagation.ContextPropagators; import io.opentelemetry.context.propagation.ContextPropagators;
import io.opentelemetry.contrib.awsxray.propagator.AwsXrayPropagator;
import io.opentelemetry.extension.trace.propagation.B3Propagator; import io.opentelemetry.extension.trace.propagation.B3Propagator;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
@ -41,14 +42,11 @@ class ApiGatewayProxyRequestTest {
} }
@Test @Test
@SuppressWarnings("deprecation") // deprecated class to be updated once published in new location
public void shouldCreateNoopRequestIfXrayPropagatorsSet() throws IOException { public void shouldCreateNoopRequestIfXrayPropagatorsSet() throws IOException {
// given // given
InputStream mock = mock(InputStream.class); InputStream mock = mock(InputStream.class);
GlobalOpenTelemetry.set( GlobalOpenTelemetry.set(
OpenTelemetry.propagating( OpenTelemetry.propagating(ContextPropagators.create(AwsXrayPropagator.getInstance())));
ContextPropagators.create(
io.opentelemetry.extension.aws.AwsXrayPropagator.getInstance())));
// when // when
ApiGatewayProxyRequest created = ApiGatewayProxyRequest.forStream(mock); ApiGatewayProxyRequest created = ApiGatewayProxyRequest.forStream(mock);
// then // then

View File

@ -27,7 +27,7 @@ public class AwsLambdaInstrumentationModule extends InstrumentationModule {
@Override @Override
public boolean isHelperClass(String className) { public boolean isHelperClass(String className) {
return className.startsWith("io.opentelemetry.extension.aws."); return className.startsWith("io.opentelemetry.contrib.awsxray.");
} }
@Override @Override

View File

@ -23,7 +23,7 @@ dependencies {
// Note that Lambda itself uses Jackson, but does not expose it to the function so we need to include it here. // Note that Lambda itself uses Jackson, but does not expose it to the function so we need to include it here.
// TODO(anuraaga): Switch to aws-lambda-java-serialization to more robustly follow Lambda's serialization logic. // TODO(anuraaga): Switch to aws-lambda-java-serialization to more robustly follow Lambda's serialization logic.
implementation("com.fasterxml.jackson.core:jackson-databind") implementation("com.fasterxml.jackson.core:jackson-databind")
implementation("io.opentelemetry:opentelemetry-extension-aws") implementation("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
// allows to get the function ARN // allows to get the function ARN
testLibrary("com.amazonaws:aws-lambda-java-core:1.2.1") testLibrary("com.amazonaws:aws-lambda-java-core:1.2.1")

View File

@ -47,7 +47,7 @@ configurations {
} }
dependencies { dependencies {
compileOnly("io.opentelemetry:opentelemetry-extension-aws") compileOnly("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
implementation(project(":instrumentation:aws-sdk:aws-sdk-1.11:library")) implementation(project(":instrumentation:aws-sdk:aws-sdk-1.11:library"))

View File

@ -20,7 +20,7 @@ public class AwsSdkInstrumentationModule extends InstrumentationModule {
@Override @Override
public boolean isHelperClass(String className) { public boolean isHelperClass(String className) {
return className.startsWith("io.opentelemetry.extension.aws."); return className.startsWith("io.opentelemetry.contrib.awsxray.");
} }
@Override @Override

View File

@ -3,7 +3,7 @@ plugins {
} }
dependencies { dependencies {
implementation("io.opentelemetry:opentelemetry-extension-aws") implementation("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
library("com.amazonaws:aws-java-sdk-core:1.11.0") library("com.amazonaws:aws-java-sdk-core:1.11.0")

View File

@ -7,6 +7,7 @@ package io.opentelemetry.instrumentation.awssdk.v1_11;
import io.opentelemetry.context.Context; import io.opentelemetry.context.Context;
import io.opentelemetry.context.propagation.TextMapGetter; import io.opentelemetry.context.propagation.TextMapGetter;
import io.opentelemetry.contrib.awsxray.propagator.AwsXrayPropagator;
import java.util.Collections; import java.util.Collections;
import java.util.Map; import java.util.Map;
@ -28,10 +29,9 @@ final class SqsParentContext {
static final String AWS_TRACE_SYSTEM_ATTRIBUTE = "AWSTraceHeader"; static final String AWS_TRACE_SYSTEM_ATTRIBUTE = "AWSTraceHeader";
@SuppressWarnings("deprecation") // deprecated class to be updated once published in new location
static Context ofSystemAttributes(Map<String, String> systemAttributes) { static Context ofSystemAttributes(Map<String, String> systemAttributes) {
String traceHeader = systemAttributes.get(AWS_TRACE_SYSTEM_ATTRIBUTE); String traceHeader = systemAttributes.get(AWS_TRACE_SYSTEM_ATTRIBUTE);
return io.opentelemetry.extension.aws.AwsXrayPropagator.getInstance() return AwsXrayPropagator.getInstance()
.extract( .extract(
Context.root(), Context.root(),
Collections.singletonMap("X-Amzn-Trace-Id", traceHeader), Collections.singletonMap("X-Amzn-Trace-Id", traceHeader),

View File

@ -11,6 +11,7 @@ import com.amazonaws.Response;
import com.amazonaws.handlers.HandlerContextKey; import com.amazonaws.handlers.HandlerContextKey;
import com.amazonaws.handlers.RequestHandler2; import com.amazonaws.handlers.RequestHandler2;
import io.opentelemetry.context.Context; import io.opentelemetry.context.Context;
import io.opentelemetry.contrib.awsxray.propagator.AwsXrayPropagator;
import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter;
import java.util.List; import java.util.List;
import javax.annotation.Nullable; import javax.annotation.Nullable;
@ -40,8 +41,7 @@ final class TracingRequestHandler extends RequestHandler2 {
} }
Context context = requestInstrumenter.start(parentContext, request); Context context = requestInstrumenter.start(parentContext, request);
io.opentelemetry.extension.aws.AwsXrayPropagator.getInstance() AwsXrayPropagator.getInstance().inject(context, request, HeaderSetter.INSTANCE);
.inject(context, request, HeaderSetter.INSTANCE);
request.addHandlerContext(CONTEXT, context); request.addHandlerContext(CONTEXT, context);
} }

View File

@ -27,7 +27,7 @@ public class AwsSdkInstrumentationModule extends InstrumentationModule {
@Override @Override
public boolean isHelperClass(String className) { public boolean isHelperClass(String className) {
return className.startsWith("io.opentelemetry.extension.aws."); return className.startsWith("io.opentelemetry.contrib.awsxray.");
} }
/** /**

View File

@ -3,7 +3,7 @@ plugins {
} }
dependencies { dependencies {
implementation("io.opentelemetry:opentelemetry-extension-aws") implementation("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
library("software.amazon.awssdk:aws-core:2.2.0") library("software.amazon.awssdk:aws-core:2.2.0")
library("software.amazon.awssdk:aws-json-protocol:2.2.0") library("software.amazon.awssdk:aws-json-protocol:2.2.0")

View File

@ -7,6 +7,7 @@ package io.opentelemetry.instrumentation.awssdk.v2_2;
import io.opentelemetry.context.Context; import io.opentelemetry.context.Context;
import io.opentelemetry.context.propagation.TextMapGetter; import io.opentelemetry.context.propagation.TextMapGetter;
import io.opentelemetry.contrib.awsxray.propagator.AwsXrayPropagator;
import java.util.Collections; import java.util.Collections;
import java.util.Map; import java.util.Map;
@ -28,10 +29,9 @@ final class SqsParentContext {
static final String AWS_TRACE_SYSTEM_ATTRIBUTE = "AWSTraceHeader"; static final String AWS_TRACE_SYSTEM_ATTRIBUTE = "AWSTraceHeader";
@SuppressWarnings("deprecation") // deprecated class to be updated once published in new location
static Context ofSystemAttributes(Map<String, String> systemAttributes) { static Context ofSystemAttributes(Map<String, String> systemAttributes) {
String traceHeader = systemAttributes.get(AWS_TRACE_SYSTEM_ATTRIBUTE); String traceHeader = systemAttributes.get(AWS_TRACE_SYSTEM_ATTRIBUTE);
return io.opentelemetry.extension.aws.AwsXrayPropagator.getInstance() return AwsXrayPropagator.getInstance()
.extract( .extract(
Context.root(), Context.root(),
Collections.singletonMap("X-Amzn-Trace-Id", traceHeader), Collections.singletonMap("X-Amzn-Trace-Id", traceHeader),

View File

@ -9,6 +9,7 @@ import static io.opentelemetry.instrumentation.awssdk.v2_2.AwsSdkRequestType.DYN
import io.opentelemetry.api.trace.Span; import io.opentelemetry.api.trace.Span;
import io.opentelemetry.context.Scope; import io.opentelemetry.context.Scope;
import io.opentelemetry.contrib.awsxray.propagator.AwsXrayPropagator;
import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter;
import io.opentelemetry.semconv.trace.attributes.SemanticAttributes; import io.opentelemetry.semconv.trace.attributes.SemanticAttributes;
import java.util.ArrayList; import java.util.ArrayList;
@ -134,8 +135,7 @@ final class TracingExecutionInterceptor implements ExecutionInterceptor {
} }
SdkHttpRequest.Builder builder = httpRequest.toBuilder(); SdkHttpRequest.Builder builder = httpRequest.toBuilder();
io.opentelemetry.extension.aws.AwsXrayPropagator.getInstance() AwsXrayPropagator.getInstance().inject(otelContext, builder, RequestHeaderSetter.INSTANCE);
.inject(otelContext, builder, RequestHeaderSetter.INSTANCE);
return builder.build(); return builder.build();
} }

View File

@ -31,7 +31,7 @@ dependencies {
compileOnly("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi") compileOnly("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi")
compileOnly("io.opentelemetry:opentelemetry-extension-annotations") compileOnly("io.opentelemetry:opentelemetry-extension-annotations")
compileOnly("io.opentelemetry:opentelemetry-extension-trace-propagators") compileOnly("io.opentelemetry:opentelemetry-extension-trace-propagators")
compileOnly("io.opentelemetry:opentelemetry-extension-aws") compileOnly("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
compileOnly("io.opentelemetry:opentelemetry-exporter-logging") compileOnly("io.opentelemetry:opentelemetry-exporter-logging")
compileOnly("io.opentelemetry:opentelemetry-exporter-jaeger") compileOnly("io.opentelemetry:opentelemetry-exporter-jaeger")
compileOnly("io.opentelemetry:opentelemetry-exporter-otlp") compileOnly("io.opentelemetry:opentelemetry-exporter-otlp")
@ -59,7 +59,7 @@ dependencies {
testImplementation("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi") testImplementation("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi")
testImplementation("io.opentelemetry:opentelemetry-extension-annotations") testImplementation("io.opentelemetry:opentelemetry-extension-annotations")
testImplementation("io.opentelemetry:opentelemetry-extension-trace-propagators") testImplementation("io.opentelemetry:opentelemetry-extension-trace-propagators")
testImplementation("io.opentelemetry:opentelemetry-extension-aws") testImplementation("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
testImplementation("io.opentelemetry:opentelemetry-exporter-logging") testImplementation("io.opentelemetry:opentelemetry-exporter-logging")
testImplementation("io.opentelemetry:opentelemetry-exporter-jaeger") testImplementation("io.opentelemetry:opentelemetry-exporter-jaeger")
testImplementation("io.opentelemetry:opentelemetry-exporter-otlp") testImplementation("io.opentelemetry:opentelemetry-exporter-otlp")

View File

@ -10,6 +10,7 @@ import static java.util.logging.Level.WARNING;
import io.opentelemetry.api.baggage.propagation.W3CBaggagePropagator; import io.opentelemetry.api.baggage.propagation.W3CBaggagePropagator;
import io.opentelemetry.api.trace.propagation.W3CTraceContextPropagator; import io.opentelemetry.api.trace.propagation.W3CTraceContextPropagator;
import io.opentelemetry.context.propagation.TextMapPropagator; import io.opentelemetry.context.propagation.TextMapPropagator;
import io.opentelemetry.contrib.awsxray.propagator.AwsXrayPropagator;
import io.opentelemetry.extension.trace.propagation.B3Propagator; import io.opentelemetry.extension.trace.propagation.B3Propagator;
import io.opentelemetry.extension.trace.propagation.JaegerPropagator; import io.opentelemetry.extension.trace.propagation.JaegerPropagator;
import io.opentelemetry.extension.trace.propagation.OtTracePropagator; import io.opentelemetry.extension.trace.propagation.OtTracePropagator;
@ -67,11 +68,11 @@ public final class CompositeTextMapPropagatorFactory {
} }
break; break;
case "xray": case "xray":
if (isOnClasspath("io.opentelemetry.extension.aws.AwsXrayPropagator")) { if (isOnClasspath("io.opentelemetry.contrib.awsxray.AwsXrayPropagator")) {
propagators.add( propagators.add(
beanFactory beanFactory
.getBeanProvider(io.opentelemetry.extension.aws.AwsXrayPropagator.class) .getBeanProvider(AwsXrayPropagator.class)
.getIfAvailable(io.opentelemetry.extension.aws.AwsXrayPropagator::getInstance)); .getIfAvailable(AwsXrayPropagator::getInstance));
} }
break; break;
case "tracecontext": case "tracecontext":

View File

@ -23,7 +23,6 @@ dependencies {
implementation("io.opentelemetry:opentelemetry-sdk-metrics") implementation("io.opentelemetry:opentelemetry-sdk-metrics")
implementation("io.opentelemetry:opentelemetry-sdk-logs") implementation("io.opentelemetry:opentelemetry-sdk-logs")
implementation("io.opentelemetry:opentelemetry-extension-kotlin") implementation("io.opentelemetry:opentelemetry-extension-kotlin")
implementation("io.opentelemetry:opentelemetry-extension-aws")
implementation("io.opentelemetry:opentelemetry-extension-trace-propagators") implementation("io.opentelemetry:opentelemetry-extension-trace-propagators")
// the incubator's ViewConfigCustomizer is used to support loading yaml-based metric views // the incubator's ViewConfigCustomizer is used to support loading yaml-based metric views
implementation("io.opentelemetry:opentelemetry-sdk-extension-incubator") implementation("io.opentelemetry:opentelemetry-sdk-extension-incubator")
@ -40,6 +39,8 @@ dependencies {
implementation("io.opentelemetry:opentelemetry-sdk-extension-jaeger-remote-sampler") implementation("io.opentelemetry:opentelemetry-sdk-extension-jaeger-remote-sampler")
implementation("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
api("net.bytebuddy:byte-buddy-dep") api("net.bytebuddy:byte-buddy-dep")
annotationProcessor("com.google.auto.service:auto-service") annotationProcessor("com.google.auto.service:auto-service")

34
licenses/licenses.md generated
View File

@ -1,7 +1,7 @@
#javaagent #javaagent
##Dependency License Report ##Dependency License Report
_2022-11-18 08:34:48 PST_ _2022-11-18 15:15:18 CST_
## Apache License, Version 2.0 ## Apache License, Version 2.0
**1** **Group:** `com.blogspot.mydailyjava` **Name:** `weak-lock-free` **Version:** `0.18` **1** **Group:** `com.blogspot.mydailyjava` **Name:** `weak-lock-free` **Version:** `0.18`
@ -85,58 +85,58 @@ _2022-11-18 08:34:48 PST_
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**19** **Group:** `io.opentelemetry` **Name:** `opentelemetry-extension-aws` **Version:** `1.20.1` **19** **Group:** `io.opentelemetry` **Name:** `opentelemetry-extension-kotlin` **Version:** `1.20.1`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**20** **Group:** `io.opentelemetry` **Name:** `opentelemetry-extension-kotlin` **Version:** `1.20.1` **20** **Group:** `io.opentelemetry` **Name:** `opentelemetry-extension-trace-propagators` **Version:** `1.20.1`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**21** **Group:** `io.opentelemetry` **Name:** `opentelemetry-extension-trace-propagators` **Version:** `1.20.1` **21** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk` **Version:** `1.20.1`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**22** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk` **Version:** `1.20.1` **22** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-common` **Version:** `1.20.1`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**23** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-common` **Version:** `1.20.1` **23** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-extension-autoconfigure` **Version:** `1.20.1-alpha`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**24** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-extension-autoconfigure` **Version:** `1.20.1-alpha` **24** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-extension-autoconfigure-spi` **Version:** `1.20.1`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**25** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-extension-autoconfigure-spi` **Version:** `1.20.1` **25** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-extension-incubator` **Version:** `1.20.1-alpha`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**26** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-extension-incubator` **Version:** `1.20.1-alpha` **26** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-extension-jaeger-remote-sampler` **Version:** `1.20.1`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**27** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-extension-jaeger-remote-sampler` **Version:** `1.20.1` **27** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-logs` **Version:** `1.20.1-alpha`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**28** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-logs` **Version:** `1.20.1-alpha` **28** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-metrics` **Version:** `1.20.1`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**29** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-metrics` **Version:** `1.20.1` **29** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-trace` **Version:** `1.20.1`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**30** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-trace` **Version:** `1.20.1` **30** **Group:** `io.opentelemetry` **Name:** `opentelemetry-semconv` **Version:** `1.20.1-alpha`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**31** **Group:** `io.opentelemetry` **Name:** `opentelemetry-semconv` **Version:** `1.20.1-alpha`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java) > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) > - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
**31** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-aws-xray-propagator` **Version:** `1.20.0-alpha`
> - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java-contrib](https://github.com/open-telemetry/opentelemetry-java-contrib)
> - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
**32** **Group:** `io.zipkin.reporter2` **Name:** `zipkin-reporter` **Version:** `2.16.3` **32** **Group:** `io.zipkin.reporter2` **Name:** `zipkin-reporter` **Version:** `2.16.3`
> - **Manifest Project URL**: [https://zipkin.io/](https://zipkin.io/) > - **Manifest Project URL**: [https://zipkin.io/](https://zipkin.io/)
> - **Manifest License**: Apache License, Version 2.0 (Not Packaged) > - **Manifest License**: Apache License, Version 2.0 (Not Packaged)