diff --git a/CHANGELOG.md b/CHANGELOG.md index 8b828b9d3..2b48910ed 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,11 @@ and this repository adheres to [Semantic Versioning](https://semver.org/spec/v2. ## Unreleased +## v2.7.0 - 2024-08-22 + +- OpenTelemetry Java SDK has been updated to version 1.41.0. +- OpenTelemetry Instrumentation for Java has been updated to version 2.7.0. + ## v2.6.0 - 2024-07-24 - OpenTelemetry Java SDK has been updated to version 1.40.0. diff --git a/README.md b/README.md index 7e56734c9..18db54b6f 100644 --- a/README.md +++ b/README.md @@ -25,8 +25,8 @@ Existing customers should consider migrating to version 2.5.0 or higher. To lear

Stable - - OpenTelemetry Instrumentation for Java Version + + OpenTelemetry Instrumentation for Java Version Splunk GDI specification @@ -86,11 +86,6 @@ see [Migrate from the SignalFx Java Agent](https://quickdraw.splunk.com/redirect - -The following documentation refers to the in-development version of `splunk-otel-java`. Docs for the latest version ([v2.6.0](https://github.com/signalfx/splunk-otel-java/releases/latest)) can be found [here](https://github.com/signalfx/splunk-otel-java/blob/v2.6.0/README.md). - ---- - ## Requirements @@ -122,11 +117,11 @@ To extend the instrumentation with the OpenTelemetry Instrumentation for Java, you have to use a compatible API version. -The Splunk Distribution of OpenTelemetry Java version 2.6.0 is compatible +The Splunk Distribution of OpenTelemetry Java version 2.7.0 is compatible with: -* OpenTelemetry API version 1.40.0 -* OpenTelemetry Instrumentation for Java version 2.6.0 +* OpenTelemetry API version 1.41.0 +* OpenTelemetry Instrumentation for Java version 2.7.0 ## Snapshot builds diff --git a/dependencyManagement/build.gradle.kts b/dependencyManagement/build.gradle.kts index a3001a4bc..705fb0013 100644 --- a/dependencyManagement/build.gradle.kts +++ b/dependencyManagement/build.gradle.kts @@ -4,9 +4,9 @@ plugins { val otelVersion = "1.41.0" val otelAlphaVersion = otelVersion.replaceFirst("(-SNAPSHOT)?$".toRegex(), "-alpha$1") -val otelInstrumentationVersion = "2.7.0-SNAPSHOT" +val otelInstrumentationVersion = "2.7.0" val otelInstrumentationAlphaVersion = otelInstrumentationVersion.replaceFirst("(-SNAPSHOT)?$".toRegex(), "-alpha$1") -val otelContribAlphaVersion = "1.37.0-alpha" +val otelContribAlphaVersion = "1.38.0-alpha" val autoValueVersion = "1.11.0" val dockerJavaVersion = "3.4.0" diff --git a/deployments/cloudfoundry/buildpack/README.md b/deployments/cloudfoundry/buildpack/README.md index 8e33e853d..fd6dbcee8 100644 --- a/deployments/cloudfoundry/buildpack/README.md +++ b/deployments/cloudfoundry/buildpack/README.md @@ -40,7 +40,7 @@ If you want to use a specific version of the Java agent in your application, you environment variable before application deployment, either using `cf set-env` or the `manifest.yml` file: ```sh -$ cf set-env SPLUNK_OTEL_JAVA_VERSION 2.6.0 +$ cf set-env SPLUNK_OTEL_JAVA_VERSION 2.7.0 ``` By default, the [latest](https://github.com/signalfx/splunk-otel-java/releases/latest) available agent version is used. diff --git a/licenses/licenses.md b/licenses/licenses.md index d51293220..f09090614 100644 --- a/licenses/licenses.md +++ b/licenses/licenses.md @@ -1,7 +1,7 @@ # splunk-otel-javaagent ## Dependency License Report -_2024-08-15 18:06:13 EEST_ +_2024-08-21 13:38:31 EEST_ ## Apache License, Version 2.0 **1** **Group:** `com.squareup.okhttp3` **Name:** `okhttp` **Version:** `4.12.0` @@ -69,15 +69,15 @@ _2024-08-15 18:06:13 EEST_ > - **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) -**17** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-resource-providers` **Version:** `1.37.0-alpha` +**17** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-resource-providers` **Version:** `1.38.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 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) -**18** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-samplers` **Version:** `1.37.0-alpha` +**18** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-samplers` **Version:** `1.38.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 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) -**19** **Group:** `io.opentelemetry.instrumentation` **Name:** `opentelemetry-instrumentation-bom-alpha` **Version:** `2.7.0-alpha-SNAPSHOT` +**19** **Group:** `io.opentelemetry.instrumentation` **Name:** `opentelemetry-instrumentation-bom-alpha` **Version:** `2.7.0-alpha` > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java-instrumentation](https://github.com/open-telemetry/opentelemetry-java-instrumentation) > - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) diff --git a/metadata-generator/src/main/java/com/splunk/opentelemetry/tools/MetadataGenerator.java b/metadata-generator/src/main/java/com/splunk/opentelemetry/tools/MetadataGenerator.java index 610a84e7a..a06817d44 100644 --- a/metadata-generator/src/main/java/com/splunk/opentelemetry/tools/MetadataGenerator.java +++ b/metadata-generator/src/main/java/com/splunk/opentelemetry/tools/MetadataGenerator.java @@ -1777,6 +1777,7 @@ Some instrumentations (e.g. Spring Web MVC instrumentation) produce SpanKind.Int | `otel.instrumentation.logback-appender.experimental.capture-marker-attribute` | Boolean | `false` | Enable the capture of Logback markers as attributes. | | `otel.instrumentation.logback-appender.experimental.capture-key-value-pair-attributes` | Boolean | `false` | Enable the capture of Logback key value pairs as attributes. | | `otel.instrumentation.logback-appender.experimental.capture-logger-context-attributes` | Boolean | `false` | Enable the capture of Logback logger context properties as attributes. | + | `otel.instrumentation.logback-appender.experimental.capture-arguments` | Boolean | `false` | Enable the capture of Logback logger arguments. | | `otel.instrumentation.logback-appender.experimental.capture-mdc-attributes` | String | | Comma separated list of MDC attributes to capture. Use the wildcard character `*` to capture all attributes. | */ settings.add( @@ -1814,6 +1815,13 @@ Some instrumentations (e.g. Spring Web MVC instrumentation) produce SpanKind.Int "false", SettingType.BOOLEAN, SettingCategory.INSTRUMENTATION)); + settings.add( + setting( + "otel.instrumentation.logback-appender.experimental.capture-arguments", + "Enable the capture of Logback logger arguments.", + "false", + SettingType.BOOLEAN, + SettingCategory.INSTRUMENTATION)); settings.add( setting( "otel.instrumentation.logback-appender.experimental.capture-mdc-attributes", @@ -3051,6 +3059,7 @@ Some instrumentations (e.g. Spring Web MVC instrumentation) produce SpanKind.Int instrumentation("pulsar") .component("Apache Pulsar", "2.8 and higher") .messagingPublisherMetrics() + .messagingConsumerMetrics() .build()); instrumentations.add( instrumentation("rocketmq-client") @@ -4027,6 +4036,19 @@ InstrumentationBuilder messagingPublisherMetrics() { return this; } + InstrumentationBuilder messagingConsumerMetrics() { + metric( + "messaging.receive.duration", + MetricInstrument.HISTOGRAM, + "Measures the duration of receive operation."); + metric( + "messaging.receive.messages", + MetricInstrument.COUNTER, + "Measures the number of received messages."); + + return this; + } + InstrumentationBuilder dbPoolMetrics(DbPoolMetrics... dbPoolMetrics) { for (DbPoolMetrics metric : dbPoolMetrics) { metric.add(this); diff --git a/version.gradle.kts b/version.gradle.kts index d4daebfc3..d2321e8dd 100644 --- a/version.gradle.kts +++ b/version.gradle.kts @@ -1,5 +1,5 @@ // do NOT update that variable manually - it is managed by the pre/post release scripts -val distroVersion = "2.7.0-SNAPSHOT" +val distroVersion = "2.7.0" allprojects { version = distroVersion