Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,2 +1,27 @@
Comparing source compatibility of opentelemetry-instrumentation-api-2.27.0-SNAPSHOT.jar against opentelemetry-instrumentation-api-2.26.1.jar
No changes.
*** MODIFIED CLASS: PUBLIC FINAL io.opentelemetry.instrumentation.api.semconv.http.HttpClientAttributesExtractorBuilder (not serializable)
=== CLASS FILE FORMAT VERSION: 52.0 <- 52.0
GENERIC TEMPLATES: === REQUEST:java.lang.Object, === RESPONSE:java.lang.Object
=== UNCHANGED METHOD: PUBLIC io.opentelemetry.instrumentation.api.semconv.http.HttpClientAttributesExtractorBuilder<REQUEST,RESPONSE><REQUEST,RESPONSE> setCapturedRequestHeaders(java.util.Collection<java.lang.String><java.lang.String>)
+++ NEW ANNOTATION: java.lang.Deprecated
=== UNCHANGED METHOD: PUBLIC io.opentelemetry.instrumentation.api.semconv.http.HttpClientAttributesExtractorBuilder<REQUEST,RESPONSE><REQUEST,RESPONSE> setCapturedRequestHeaders(java.util.List<java.lang.String><java.lang.String>)
+++ NEW ANNOTATION: java.lang.Deprecated
=== UNCHANGED METHOD: PUBLIC io.opentelemetry.instrumentation.api.semconv.http.HttpClientAttributesExtractorBuilder<REQUEST,RESPONSE><REQUEST,RESPONSE> setCapturedResponseHeaders(java.util.Collection<java.lang.String><java.lang.String>)
+++ NEW ANNOTATION: java.lang.Deprecated
=== UNCHANGED METHOD: PUBLIC io.opentelemetry.instrumentation.api.semconv.http.HttpClientAttributesExtractorBuilder<REQUEST,RESPONSE><REQUEST,RESPONSE> setCapturedResponseHeaders(java.util.List<java.lang.String><java.lang.String>)
+++ NEW ANNOTATION: java.lang.Deprecated
+++ NEW METHOD: PUBLIC(+) io.opentelemetry.instrumentation.api.semconv.http.HttpClientAttributesExtractorBuilder<REQUEST,RESPONSE> setCaptureRequestHeaders(java.util.Collection<java.lang.String>)
+++ NEW METHOD: PUBLIC(+) io.opentelemetry.instrumentation.api.semconv.http.HttpClientAttributesExtractorBuilder<REQUEST,RESPONSE> setCaptureResponseHeaders(java.util.Collection<java.lang.String>)
*** MODIFIED CLASS: PUBLIC FINAL io.opentelemetry.instrumentation.api.semconv.http.HttpServerAttributesExtractorBuilder (not serializable)
=== CLASS FILE FORMAT VERSION: 52.0 <- 52.0
GENERIC TEMPLATES: === REQUEST:java.lang.Object, === RESPONSE:java.lang.Object
=== UNCHANGED METHOD: PUBLIC io.opentelemetry.instrumentation.api.semconv.http.HttpServerAttributesExtractorBuilder<REQUEST,RESPONSE><REQUEST,RESPONSE> setCapturedRequestHeaders(java.util.Collection<java.lang.String><java.lang.String>)
+++ NEW ANNOTATION: java.lang.Deprecated
=== UNCHANGED METHOD: PUBLIC io.opentelemetry.instrumentation.api.semconv.http.HttpServerAttributesExtractorBuilder<REQUEST,RESPONSE><REQUEST,RESPONSE> setCapturedRequestHeaders(java.util.List<java.lang.String><java.lang.String>)
+++ NEW ANNOTATION: java.lang.Deprecated
=== UNCHANGED METHOD: PUBLIC io.opentelemetry.instrumentation.api.semconv.http.HttpServerAttributesExtractorBuilder<REQUEST,RESPONSE><REQUEST,RESPONSE> setCapturedResponseHeaders(java.util.Collection<java.lang.String><java.lang.String>)
+++ NEW ANNOTATION: java.lang.Deprecated
=== UNCHANGED METHOD: PUBLIC io.opentelemetry.instrumentation.api.semconv.http.HttpServerAttributesExtractorBuilder<REQUEST,RESPONSE><REQUEST,RESPONSE> setCapturedResponseHeaders(java.util.List<java.lang.String><java.lang.String>)
+++ NEW ANNOTATION: java.lang.Deprecated
+++ NEW METHOD: PUBLIC(+) io.opentelemetry.instrumentation.api.semconv.http.HttpServerAttributesExtractorBuilder<REQUEST,RESPONSE> setCaptureRequestHeaders(java.util.Collection<java.lang.String>)
+++ NEW METHOD: PUBLIC(+) io.opentelemetry.instrumentation.api.semconv.http.HttpServerAttributesExtractorBuilder<REQUEST,RESPONSE> setCaptureResponseHeaders(java.util.Collection<java.lang.String>)
Original file line number Diff line number Diff line change
Expand Up @@ -121,24 +121,44 @@ public DefaultHttpClientInstrumenterBuilder<REQUEST, RESPONSE> setSpanStatusExtr
* @param requestHeaders A list of HTTP header names.
*/
@CanIgnoreReturnValue
public DefaultHttpClientInstrumenterBuilder<REQUEST, RESPONSE> setCapturedRequestHeaders(
public DefaultHttpClientInstrumenterBuilder<REQUEST, RESPONSE> setCaptureRequestHeaders(
Collection<String> requestHeaders) {
httpAttributesExtractorBuilder.setCapturedRequestHeaders(requestHeaders);
httpAttributesExtractorBuilder.setCaptureRequestHeaders(requestHeaders);
return this;
}

/**
* @deprecated Use {@link #setCaptureRequestHeaders(Collection)} instead.
*/
@Deprecated
@CanIgnoreReturnValue
public DefaultHttpClientInstrumenterBuilder<REQUEST, RESPONSE> setCapturedRequestHeaders(
Collection<String> requestHeaders) {
return setCaptureRequestHeaders(requestHeaders);
}

/**
* Configures the HTTP response headers that will be captured as span attributes.
*
* @param responseHeaders A list of HTTP header names.
*/
@CanIgnoreReturnValue
public DefaultHttpClientInstrumenterBuilder<REQUEST, RESPONSE> setCapturedResponseHeaders(
public DefaultHttpClientInstrumenterBuilder<REQUEST, RESPONSE> setCaptureResponseHeaders(
Collection<String> responseHeaders) {
httpAttributesExtractorBuilder.setCapturedResponseHeaders(responseHeaders);
httpAttributesExtractorBuilder.setCaptureResponseHeaders(responseHeaders);
return this;
}

/**
* @deprecated Use {@link #setCaptureResponseHeaders(Collection)} instead.
*/
@Deprecated
@CanIgnoreReturnValue
public DefaultHttpClientInstrumenterBuilder<REQUEST, RESPONSE> setCapturedResponseHeaders(
Collection<String> responseHeaders) {
return setCaptureResponseHeaders(responseHeaders);
}

/**
* Configures the instrumentation to recognize an alternative set of HTTP request methods.
*
Expand Down Expand Up @@ -251,8 +271,8 @@ InstrumenterBuilder<BUILDERREQUEST, BUILDERRESPONSE> instrumenterBuilder(
@CanIgnoreReturnValue
public DefaultHttpClientInstrumenterBuilder<REQUEST, RESPONSE> configure(CommonConfig config) {
set(config::getKnownHttpRequestMethods, this::setKnownMethods);
set(config::getClientRequestHeaders, this::setCapturedRequestHeaders);
set(config::getClientResponseHeaders, this::setCapturedResponseHeaders);
set(config::getClientRequestHeaders, this::setCaptureRequestHeaders);
set(config::getClientResponseHeaders, this::setCaptureResponseHeaders);
set(
config::shouldEmitExperimentalHttpClientTelemetry,
this::setEmitExperimentalHttpClientTelemetry);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,24 +122,44 @@ public DefaultHttpServerInstrumenterBuilder<REQUEST, RESPONSE> setSpanStatusExtr
* @param requestHeaders A list of HTTP header names.
*/
@CanIgnoreReturnValue
public DefaultHttpServerInstrumenterBuilder<REQUEST, RESPONSE> setCapturedRequestHeaders(
public DefaultHttpServerInstrumenterBuilder<REQUEST, RESPONSE> setCaptureRequestHeaders(
Collection<String> requestHeaders) {
httpAttributesExtractorBuilder.setCapturedRequestHeaders(requestHeaders);
httpAttributesExtractorBuilder.setCaptureRequestHeaders(requestHeaders);
return this;
}

/**
* @deprecated Use {@link #setCaptureRequestHeaders(Collection)} instead.
*/
@Deprecated
@CanIgnoreReturnValue
public DefaultHttpServerInstrumenterBuilder<REQUEST, RESPONSE> setCapturedRequestHeaders(
Collection<String> requestHeaders) {
return setCaptureRequestHeaders(requestHeaders);
}

/**
* Configures the HTTP response headers that will be captured as span attributes.
*
* @param responseHeaders A list of HTTP header names.
*/
@CanIgnoreReturnValue
public DefaultHttpServerInstrumenterBuilder<REQUEST, RESPONSE> setCapturedResponseHeaders(
public DefaultHttpServerInstrumenterBuilder<REQUEST, RESPONSE> setCaptureResponseHeaders(
Collection<String> responseHeaders) {
httpAttributesExtractorBuilder.setCapturedResponseHeaders(responseHeaders);
httpAttributesExtractorBuilder.setCaptureResponseHeaders(responseHeaders);
return this;
}

/**
* @deprecated Use {@link #setCaptureResponseHeaders(Collection)} instead.
*/
@Deprecated
@CanIgnoreReturnValue
public DefaultHttpServerInstrumenterBuilder<REQUEST, RESPONSE> setCapturedResponseHeaders(
Collection<String> responseHeaders) {
return setCaptureResponseHeaders(responseHeaders);
}

/**
* Configures the instrumentation to recognize an alternative set of HTTP request methods.
*
Expand Down Expand Up @@ -243,8 +263,8 @@ public InstrumenterBuilder<REQUEST, RESPONSE> instrumenterBuilder() {
@CanIgnoreReturnValue
public DefaultHttpServerInstrumenterBuilder<REQUEST, RESPONSE> configure(CommonConfig config) {
set(config::getKnownHttpRequestMethods, this::setKnownMethods);
set(config::getServerRequestHeaders, this::setCapturedRequestHeaders);
set(config::getServerResponseHeaders, this::setCapturedResponseHeaders);
set(config::getServerRequestHeaders, this::setCaptureRequestHeaders);
set(config::getServerResponseHeaders, this::setCaptureResponseHeaders);
set(
config::shouldEmitExperimentalHttpServerTelemetry,
this::setEmitExperimentalHttpServerTelemetry);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,28 +65,30 @@ public final class HttpClientAttributesExtractorBuilder<REQUEST, RESPONSE> {
* @param requestHeaders A list of HTTP header names.
*/
@CanIgnoreReturnValue
public HttpClientAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedRequestHeaders(
public HttpClientAttributesExtractorBuilder<REQUEST, RESPONSE> setCaptureRequestHeaders(
Collection<String> requestHeaders) {
this.capturedRequestHeaders = new ArrayList<>(requestHeaders);
return this;
}

/**
* Configures the HTTP request headers that will be captured as span attributes as described in <a
* href="https://github.com/open-telemetry/semantic-conventions/blob/v1.23.0/docs/http/http-spans.md#http-client">HTTP
* semantic conventions</a>.
*
* <p>The HTTP request header values will be captured under the {@code http.request.header.<key>}
* attribute key. The {@code <key>} part in the attribute key is the lowercase header name.
*
* @param requestHeaders A list of HTTP header names.
* @deprecated Use {@link #setCaptureRequestHeaders(Collection)} instead.
*/
// don't deprecate this since users will get deprecation warning without a clean way to suppress
// it if they're using List
@Deprecated
Comment on lines -84 to +77
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's safe to deprecate this now that we're deprecating both and changing the method name

@CanIgnoreReturnValue
public HttpClientAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedRequestHeaders(
Collection<String> requestHeaders) {
return setCaptureRequestHeaders(requestHeaders);
}

/**
* @deprecated Use {@link #setCaptureRequestHeaders(Collection)} instead.
*/
@Deprecated
@CanIgnoreReturnValue
public HttpClientAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedRequestHeaders(
List<String> requestHeaders) {
return setCapturedRequestHeaders((Collection<String>) requestHeaders);
return setCaptureRequestHeaders((Collection<String>) requestHeaders);
}

/**
Expand All @@ -102,30 +104,30 @@ public HttpClientAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedReques
* @param responseHeaders A list of HTTP header names.
*/
@CanIgnoreReturnValue
public HttpClientAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedResponseHeaders(
public HttpClientAttributesExtractorBuilder<REQUEST, RESPONSE> setCaptureResponseHeaders(
Collection<String> responseHeaders) {
this.capturedResponseHeaders = new ArrayList<>(responseHeaders);
return this;
}

/**
* Configures the HTTP response headers that will be captured as span attributes as described in
* <a
* href="https://github.com/open-telemetry/semantic-conventions/blob/v1.23.0/docs/http/http-spans.md#common-attributes">HTTP
* semantic conventions</a>.
*
* <p>The HTTP response header values will be captured under the {@code
* http.response.header.<key>} attribute key. The {@code <key>} part in the attribute key is the
* lowercase header name.
*
* @param responseHeaders A list of HTTP header names.
* @deprecated Use {@link #setCaptureResponseHeaders(Collection)} instead.
*/
// don't deprecate this since users will get deprecation warning without a clean way to suppress
// it if they're using List
@Deprecated
@CanIgnoreReturnValue
public HttpClientAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedResponseHeaders(
Collection<String> responseHeaders) {
return setCaptureResponseHeaders(responseHeaders);
}

/**
* @deprecated Use {@link #setCaptureResponseHeaders(Collection)} instead.
*/
@Deprecated
@CanIgnoreReturnValue
public HttpClientAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedResponseHeaders(
List<String> responseHeaders) {
return setCapturedResponseHeaders((Collection<String>) responseHeaders);
return setCaptureResponseHeaders((Collection<String>) responseHeaders);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,29 +70,30 @@ public final class HttpServerAttributesExtractorBuilder<REQUEST, RESPONSE> {
* @param requestHeaders A list of HTTP header names.
*/
@CanIgnoreReturnValue
public HttpServerAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedRequestHeaders(
public HttpServerAttributesExtractorBuilder<REQUEST, RESPONSE> setCaptureRequestHeaders(
Collection<String> requestHeaders) {
this.capturedRequestHeaders = new ArrayList<>(requestHeaders);
return this;
}

/**
* Configures the HTTP response headers that will be captured as span attributes as described in
* <a
* href="https://github.com/open-telemetry/semantic-conventions/blob/v1.23.0/docs/http/http-spans.md#http-server-semantic-conventions">HTTP
* semantic conventions</a>.
*
* <p>The HTTP request header values will be captured under the {@code http.request.header.<key>}
* attribute key. The {@code <key>} part in the attribute key is the lowercase header name.
*
* @param requestHeaders A list of HTTP header names.
* @deprecated Use {@link #setCaptureRequestHeaders(Collection)} instead.
*/
// don't deprecate this since users will get deprecation warning without a clean way to suppress
// it if they're using List
@Deprecated
@CanIgnoreReturnValue
public HttpServerAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedRequestHeaders(
Collection<String> requestHeaders) {
return setCaptureRequestHeaders(requestHeaders);
}

/**
* @deprecated Use {@link #setCaptureRequestHeaders(Collection)} instead.
*/
@Deprecated
@CanIgnoreReturnValue
public HttpServerAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedRequestHeaders(
List<String> requestHeaders) {
return setCapturedRequestHeaders((Collection<String>) requestHeaders);
return setCaptureRequestHeaders((Collection<String>) requestHeaders);
}

/**
Expand All @@ -108,30 +109,30 @@ public HttpServerAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedReques
* @param responseHeaders A list of HTTP header names.
*/
@CanIgnoreReturnValue
public HttpServerAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedResponseHeaders(
public HttpServerAttributesExtractorBuilder<REQUEST, RESPONSE> setCaptureResponseHeaders(
Collection<String> responseHeaders) {
this.capturedResponseHeaders = new ArrayList<>(responseHeaders);
return this;
}

/**
* Configures the HTTP response headers that will be captured as span attributes as described in
* <a
* href="https://github.com/open-telemetry/semantic-conventions/blob/v1.23.0/docs/http/http-spans.md#common-attributes">HTTP
* semantic conventions</a>.
*
* <p>The HTTP response header values will be captured under the {@code
* http.response.header.<key>} attribute key. The {@code <key>} part in the attribute key is the
* lowercase header name.
*
* @param responseHeaders A list of HTTP header names.
* @deprecated Use {@link #setCaptureResponseHeaders(Collection)} instead.
*/
// don't deprecate this since users will get deprecation warning without a clean way to suppress
// it if they're using List
@Deprecated
@CanIgnoreReturnValue
public HttpServerAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedResponseHeaders(
Collection<String> responseHeaders) {
return setCaptureResponseHeaders(responseHeaders);
}

/**
* @deprecated Use {@link #setCaptureResponseHeaders(Collection)} instead.
*/
@Deprecated
@CanIgnoreReturnValue
public HttpServerAttributesExtractorBuilder<REQUEST, RESPONSE> setCapturedResponseHeaders(
List<String> responseHeaders) {
return setCapturedResponseHeaders((Collection<String>) responseHeaders);
return setCaptureResponseHeaders((Collection<String>) responseHeaders);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,8 +170,8 @@ void normal() {

AttributesExtractor<Map<String, String>, Map<String, String>> extractor =
HttpClientAttributesExtractor.builder(new TestHttpClientAttributesGetter())
.setCapturedRequestHeaders(singletonList("Custom-Request-Header"))
.setCapturedResponseHeaders(singletonList("Custom-Response-Header"))
.setCaptureRequestHeaders(singletonList("Custom-Request-Header"))
.setCaptureResponseHeaders(singletonList("Custom-Response-Header"))
.setResendCountIncrementer(resendCountFromContext)
.build();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -199,8 +199,8 @@ void normal() {

AttributesExtractor<Map<String, String>, Map<String, String>> extractor =
HttpServerAttributesExtractor.builder(new TestHttpServerAttributesGetter())
.setCapturedRequestHeaders(singletonList("Custom-Request-Header"))
.setCapturedResponseHeaders(singletonList("Custom-Response-Header"))
.setCaptureRequestHeaders(singletonList("Custom-Request-Header"))
.setCaptureResponseHeaders(singletonList("Custom-Response-Header"))
.setHttpRouteGetter(routeFromContext)
.build();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,24 +52,44 @@ public ApacheHttpClientTelemetryBuilder addAttributesExtractor(
* @param requestHeaders HTTP header names to capture.
*/
@CanIgnoreReturnValue
public ApacheHttpClientTelemetryBuilder setCapturedRequestHeaders(
public ApacheHttpClientTelemetryBuilder setCaptureRequestHeaders(
Collection<String> requestHeaders) {
builder.setCapturedRequestHeaders(requestHeaders);
builder.setCaptureRequestHeaders(requestHeaders);
return this;
}

/**
* @deprecated Use {@link #setCaptureRequestHeaders(Collection)} instead.
*/
@Deprecated
@CanIgnoreReturnValue
public ApacheHttpClientTelemetryBuilder setCapturedRequestHeaders(
Collection<String> requestHeaders) {
return setCaptureRequestHeaders(requestHeaders);
}

/**
* Configures HTTP response headers to capture as span attributes.
*
* @param responseHeaders HTTP header names to capture.
*/
@CanIgnoreReturnValue
public ApacheHttpClientTelemetryBuilder setCapturedResponseHeaders(
public ApacheHttpClientTelemetryBuilder setCaptureResponseHeaders(
Collection<String> responseHeaders) {
builder.setCapturedResponseHeaders(responseHeaders);
builder.setCaptureResponseHeaders(responseHeaders);
return this;
}

/**
* @deprecated Use {@link #setCaptureResponseHeaders(Collection)} instead.
*/
@Deprecated
@CanIgnoreReturnValue
public ApacheHttpClientTelemetryBuilder setCapturedResponseHeaders(
Collection<String> responseHeaders) {
return setCaptureResponseHeaders(responseHeaders);
}

/**
* Configures recognized HTTP request methods.
*
Expand Down
Loading
Loading