Skip to content

Commit

Permalink
Deprecate :extensions:aws (#4862)
Browse files Browse the repository at this point in the history
* Deprecate :extensions:aws

* Add deprecation notice to README.md

* Include link to new location opentelemetry-java-contrib
  • Loading branch information
jack-berg committed Nov 2, 2022
1 parent fa46f19 commit 34beb4d
Show file tree
Hide file tree
Showing 11 changed files with 62 additions and 105 deletions.
22 changes: 11 additions & 11 deletions README.md
Expand Up @@ -221,21 +221,21 @@ dependency as follows, replacing `{{artifact-id}}` with the value from the "Arti

### API

| Component | Description | Artifact ID | Version |
|-----------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------|----------------------------------------------------------------------------------|
| [API](./api/all) | OpenTelemetry API, including metrics, traces, baggage, context | `opentelemetry-api` | <!--VERSION_STABLE-->1.19.0<!--/VERSION_STABLE--> |
| Component | Description | Artifact ID | Version |
|-----------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------|-------------------------------------------------------------|
| [API](./api/all) | OpenTelemetry API, including metrics, traces, baggage, context | `opentelemetry-api` | <!--VERSION_STABLE-->1.19.0<!--/VERSION_STABLE--> |
| [Logs API](./api/logs) | OpenTelemetry Log API for emitting events and bridging log frameworks (NOT a replacement for application logging frameworks like SLF4J, JUL, etc.) | `opentelemetry-api-logs` | <!--VERSION_UNSTABLE-->1.19.0-alpha<!--/VERSION_UNSTABLE--> |
| [Context API](./context) | OpenTelemetry context API | `opentelemetry-context` | <!--VERSION_STABLE-->1.19.0<!--/VERSION_STABLE--> |
| [Semantic Conventions](./semconv) | Generated code for OpenTelemetry semantic conventions | `opentelemetry-semconv` | <!--VERSION_UNSTABLE-->1.19.0-alpha<!--/VERSION_UNSTABLE--> |
| [Context API](./context) | OpenTelemetry context API | `opentelemetry-context` | <!--VERSION_STABLE-->1.19.0<!--/VERSION_STABLE--> |
| [Semantic Conventions](./semconv) | Generated code for OpenTelemetry semantic conventions | `opentelemetry-semconv` | <!--VERSION_UNSTABLE-->1.19.0-alpha<!--/VERSION_UNSTABLE--> |

### API Extensions

| Component | Description | Artifact ID | Version |
|---------------------------------------------------------------|---------------------------------------------------------------------------------------------|---------------------------------------------|-------------------------------------------------------------|
| [AWS Extension](./extensions/aws) | AWS Xray propagator | `opentelemetry-extension-aws` | <!--VERSION_STABLE-->1.19.0<!--/VERSION_STABLE--> |
| [Kotlin Extension](./extensions/kotlin) | Context extension for coroutines | `opentelemetry-extension-kotlin` | <!--VERSION_STABLE-->1.19.0<!--/VERSION_STABLE--> |
| [Trace Propagators Extension](./extensions/trace-propagators) | Trace propagators, including B3, Jaeger, OT Trace | `opentelemetry-extension-trace-propagators` | <!--VERSION_STABLE-->1.19.0<!--/VERSION_STABLE--> |
| [Incubator Extension](./extensions/incubator) | API incubator, including pass through propagator, and extended tracer | `opentelemetry-extension-incubator` | <!--VERSION_UNSTABLE-->1.19.0-alpha<!--/VERSION_UNSTABLE--> |
| Component | Description | Artifact ID | Version |
|---------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------|-------------------------------------------------------------|
| [AWS Extension](./extensions/aws) | AWS Xray propagator (deprecated, moved to [opentelemetry-java-contrib/aws-xray-propagator](https://github.com/open-telemetry/opentelemetry-java-contrib/tree/main/aws-xray-propagator)) | `opentelemetry-extension-aws` | <!--VERSION_STABLE-->1.19.0<!--/VERSION_STABLE--> |
| [Kotlin Extension](./extensions/kotlin) | Context extension for coroutines | `opentelemetry-extension-kotlin` | <!--VERSION_STABLE-->1.19.0<!--/VERSION_STABLE--> |
| [Trace Propagators Extension](./extensions/trace-propagators) | Trace propagators, including B3, Jaeger, OT Trace | `opentelemetry-extension-trace-propagators` | <!--VERSION_STABLE-->1.19.0<!--/VERSION_STABLE--> |
| [Incubator Extension](./extensions/incubator) | API incubator, including pass through propagator, and extended tracer | `opentelemetry-extension-incubator` | <!--VERSION_UNSTABLE-->1.19.0-alpha<!--/VERSION_UNSTABLE--> |

### SDK

Expand Down
@@ -1,2 +1,7 @@
Comparing source compatibility of against
No changes.
=== UNCHANGED CLASS: PUBLIC FINAL io.opentelemetry.extension.aws.AwsConfigurablePropagator (not serializable)
=== CLASS FILE FORMAT VERSION: 52.0 <- 52.0
+++ NEW ANNOTATION: java.lang.Deprecated
=== UNCHANGED CLASS: PUBLIC FINAL io.opentelemetry.extension.aws.AwsXrayPropagator (not serializable)
=== CLASS FILE FORMAT VERSION: 52.0 <- 52.0
+++ NEW ANNOTATION: java.lang.Deprecated
6 changes: 6 additions & 0 deletions extensions/aws/README.md
Expand Up @@ -2,5 +2,11 @@

[![Javadocs][javadoc-image]][javadoc-url]

> **NOTICE**: This artifact is deprecated and its contents have been moved
> to [io.opentelemetry.contrib:opentelemetry-aws-xray-propagator](https://github.com/open-telemetry/opentelemetry-java-contrib/tree/main/aws-xray-propagator).
> Version 1.20.0 will be the last minor version published. However, it will continue to receive
> patches for security vulnerabilities, and `io.opentelemetry:opentelemetry-bom` will reference the
> last published version.
[javadoc-image]: https://www.javadoc.io/badge/io.opentelemetry/opentelemetry-extension-aws.svg
[javadoc-url]: https://www.javadoc.io/doc/io.opentelemetry/opentelemetry-extension-aws
Expand Up @@ -12,7 +12,11 @@
/**
* A {@link ConfigurablePropagatorProvider} which allows enabling the {@link AwsXrayPropagator} with
* the propagator name {@code xray}.
*
* @deprecated Moved to <a
* href="https://github.com/open-telemetry/opentelemetry-java-contrib/tree/main/aws-xray-propagator">io.opentelemetry.contrib:opentelemetry-aws-xray-propagator</a>.
*/
@Deprecated
public final class AwsConfigurablePropagator implements ConfigurablePropagatorProvider {
@Override
public TextMapPropagator getPropagator(ConfigProperties config) {
Expand Down
Expand Up @@ -41,7 +41,11 @@
* AWSXrayPropagator.getInstance())))
* .build();
* }</pre>
*
* @deprecated Moved to <a
* href="https://github.com/open-telemetry/opentelemetry-java-contrib/tree/main/aws-xray-propagator">io.opentelemetry.contrib:opentelemetry-aws-xray-propagator</a>.
*/
@Deprecated
public final class AwsXrayPropagator implements TextMapPropagator {

// Visible for testing
Expand Down
Expand Up @@ -5,7 +5,6 @@

package io.opentelemetry.extension.aws;

import static io.opentelemetry.extension.aws.AwsXrayPropagator.TRACE_HEADER_KEY;
import static org.assertj.core.api.Assertions.assertThat;

import io.opentelemetry.api.baggage.Baggage;
Expand All @@ -24,6 +23,7 @@
import javax.annotation.Nullable;
import org.junit.jupiter.api.Test;

@SuppressWarnings("deprecation") // Moved to contrib
class AwsXrayPropagatorTest {

private static final String TRACE_ID = "8a3c60f7d188f8fa79d48a391a778fa6";
Expand Down Expand Up @@ -57,7 +57,7 @@ void inject_SampledContext() {

assertThat(carrier)
.containsEntry(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1");
}

Expand All @@ -73,7 +73,7 @@ void inject_NotSampledContext() {

assertThat(carrier)
.containsEntry(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0");
}

Expand All @@ -98,7 +98,7 @@ void inject_WithBaggage() {

assertThat(carrier)
.containsEntry(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0;"
+ "cat=meow;dog=bark");
}
Expand Down Expand Up @@ -127,7 +127,7 @@ void inject_WithBaggage_LimitTruncates() {

assertThat(carrier)
.containsEntry(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0;"
+ key1
+ '='
Expand All @@ -152,7 +152,7 @@ void inject_WithTraceState() {
// mapping with baggage.
assertThat(carrier)
.containsEntry(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0");
}

Expand Down Expand Up @@ -187,7 +187,7 @@ void extract_Nothing() {
void extract_SampledContext() {
Map<String, String> carrier = new LinkedHashMap<>();
carrier.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1");

assertThat(getSpanContext(xrayPropagator.extract(Context.current(), carrier, getter)))
Expand All @@ -200,7 +200,7 @@ void extract_SampledContext() {
void extract_NotSampledContext() {
Map<String, String> carrier = new LinkedHashMap<>();
carrier.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0");

assertThat(getSpanContext(xrayPropagator.extract(Context.current(), carrier, getter)))
Expand All @@ -213,7 +213,7 @@ void extract_NotSampledContext() {
void extract_DifferentPartOrder() {
Map<String, String> carrier = new LinkedHashMap<>();
carrier.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Parent=53995c3f42cd8ad8;Sampled=1;Root=1-8a3c60f7-d188f8fa79d48a391a778fa6");

assertThat(getSpanContext(xrayPropagator.extract(Context.current(), carrier, getter)))
Expand All @@ -226,7 +226,7 @@ void extract_DifferentPartOrder() {
void extract_AdditionalFields() {
Map<String, String> carrier = new LinkedHashMap<>();
carrier.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1;Foo=Bar");

Context context = xrayPropagator.extract(Context.current(), carrier, getter);
Expand All @@ -249,7 +249,7 @@ void extract_Baggage_LimitTruncates() {

Map<String, String> carrier = new LinkedHashMap<>();
carrier.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1;"
+ key1
+ '='
Expand All @@ -271,7 +271,7 @@ void extract_Baggage_LimitTruncates() {
@Test
void extract_EmptyHeaderValue() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(TRACE_HEADER_KEY, "");
invalidHeaders.put(AwsXrayPropagator.TRACE_HEADER_KEY, "");

verifyInvalidBehavior(invalidHeaders);
}
Expand All @@ -280,7 +280,7 @@ void extract_EmptyHeaderValue() {
void extract_InvalidTraceId() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=abcdefghijklmnopabcdefghijklmnop;Parent=53995c3f42cd8ad8;Sampled=0");

verifyInvalidBehavior(invalidHeaders);
Expand All @@ -290,7 +290,7 @@ void extract_InvalidTraceId() {
void extract_InvalidTraceId_Size() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa600;Parent=53995c3f42cd8ad8;Sampled=0");

verifyInvalidBehavior(invalidHeaders);
Expand All @@ -300,7 +300,7 @@ void extract_InvalidTraceId_Size() {
void extract_InvalidSpanId() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=abcdefghijklmnop;Sampled=0");

verifyInvalidBehavior(invalidHeaders);
Expand All @@ -310,7 +310,7 @@ void extract_InvalidSpanId() {
void extract_InvalidSpanId_Size() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad800;Sampled=0");

verifyInvalidBehavior(invalidHeaders);
Expand All @@ -320,7 +320,7 @@ void extract_InvalidSpanId_Size() {
void extract_InvalidFlags() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=");

verifyInvalidBehavior(invalidHeaders);
Expand All @@ -330,7 +330,7 @@ void extract_InvalidFlags() {
void extract_InvalidFlags_Size() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=10220");

verifyInvalidBehavior(invalidHeaders);
Expand All @@ -340,7 +340,7 @@ void extract_InvalidFlags_Size() {
void extract_InvalidFlags_NonNumeric() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=a");

verifyInvalidBehavior(invalidHeaders);
Expand All @@ -349,7 +349,8 @@ void extract_InvalidFlags_NonNumeric() {
@Test
void extract_Invalid_NoSpanId() {
Map<String, String> invalidHeaders = new LinkedHashMap<>(1);
invalidHeaders.put(TRACE_HEADER_KEY, "Root=1-622422bf-59625fe25708d4660735d8ef");
invalidHeaders.put(
AwsXrayPropagator.TRACE_HEADER_KEY, "Root=1-622422bf-59625fe25708d4660735d8ef");

verifyInvalidBehavior(invalidHeaders);
}
Expand Down Expand Up @@ -380,7 +381,7 @@ void extract_nullGetter() {
void extract_EpochPart_ZeroedSingleDigit() {
Map<String, String> carrier = new LinkedHashMap<>();
carrier.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-0-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1;Foo=Bar");

assertThat(getSpanContext(xrayPropagator.extract(Context.current(), carrier, getter)))
Expand All @@ -396,7 +397,7 @@ void extract_EpochPart_ZeroedSingleDigit() {
void extract_EpochPart_TwoChars() {
Map<String, String> carrier = new LinkedHashMap<>();
carrier.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-1a-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1;Foo=Bar");

assertThat(getSpanContext(xrayPropagator.extract(Context.current(), carrier, getter)))
Expand All @@ -412,7 +413,7 @@ void extract_EpochPart_TwoChars() {
void extract_EpochPart_Zeroed() {
Map<String, String> carrier = new LinkedHashMap<>();
carrier.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-00000000-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1;Foo=Bar");

assertThat(getSpanContext(xrayPropagator.extract(Context.current(), carrier, getter)))
Expand All @@ -428,7 +429,7 @@ void extract_EpochPart_Zeroed() {
void extract_InvalidTraceId_EpochPart_TooLong() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-8a3c60f711-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0");

assertThat(getSpanContext(xrayPropagator.extract(Context.current(), invalidHeaders, getter)))
Expand All @@ -439,7 +440,8 @@ void extract_InvalidTraceId_EpochPart_TooLong() {
void extract_InvalidTraceId_EpochPart_Empty() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(
TRACE_HEADER_KEY, "Root=1--d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0");
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1--d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0");

assertThat(getSpanContext(xrayPropagator.extract(Context.current(), invalidHeaders, getter)))
.isSameAs(SpanContext.getInvalid());
Expand All @@ -449,7 +451,8 @@ void extract_InvalidTraceId_EpochPart_Empty() {
void extract_InvalidTraceId_EpochPart_Missing() {
Map<String, String> invalidHeaders = new LinkedHashMap<>();
invalidHeaders.put(
TRACE_HEADER_KEY, "Root=1-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0");
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=1-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0");

assertThat(getSpanContext(xrayPropagator.extract(Context.current(), invalidHeaders, getter)))
.isSameAs(SpanContext.getInvalid());
Expand All @@ -459,7 +462,7 @@ void extract_InvalidTraceId_EpochPart_Missing() {
void extract_InvalidTraceId_WrongVersion() {
Map<String, String> carrier = new LinkedHashMap<>();
carrier.put(
TRACE_HEADER_KEY,
AwsXrayPropagator.TRACE_HEADER_KEY,
"Root=2-1a2a3a4a-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1;Foo=Bar");

assertThat(getSpanContext(xrayPropagator.extract(Context.current(), carrier, getter)))
Expand Down
2 changes: 0 additions & 2 deletions extensions/trace-propagators/build.gradle.kts
Expand Up @@ -16,6 +16,4 @@ dependencies {

testImplementation("io.jaegertracing:jaeger-client")
testImplementation("com.google.guava:guava")

jmhImplementation(project(":extensions:aws"))
}

0 comments on commit 34beb4d

Please sign in to comment.