diff --git a/CHANGELOG.md b/CHANGELOG.md index 0cf9c4672..f6165a617 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,15 @@ The format is based on the [Splunk GDI specification](https://github.com/signalfx/gdi-specification/blob/v1.0.0/specification/repository.md), and this repository adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## Unreleased + +## v2.25.0 - 2026-02-20 + +### General + +- OpenTelemetry Java SDK has been updated to version 1.59.0. +- OpenTelemetry Instrumentation for Java has been updated to version 2.25.0. + ## v2.24.0 - 2026-01-21 ### General diff --git a/README.md b/README.md index 94c311dd1..f6e9fe731 100644 --- a/README.md +++ b/README.md @@ -17,8 +17,8 @@ for details.
This class is internal and is not intended for public use.
*/
public final class AutoConfigureUtil {
- private static final Logger logger = Logger.getLogger(AutoConfigureUtil.class.getName());
+ private static final Class> DECLARATIVE_CONFIG_PROPERTIES_BRIDGE_CLASS;
+
+ static {
+ try {
+ DECLARATIVE_CONFIG_PROPERTIES_BRIDGE_CLASS =
+ Class.forName(
+ "io.opentelemetry.instrumentation.config.bridge.DeclarativeConfigPropertiesBridge");
+ } catch (ClassNotFoundException exception) {
+ throw new IllegalStateException(exception);
+ }
+ }
private AutoConfigureUtil() {}
@@ -55,9 +63,10 @@ public static ConfigProperties getConfig(AutoConfiguredOpenTelemetrySdk sdk) {
}
public static boolean isDeclarativeConfig(AutoConfiguredOpenTelemetrySdk sdk) {
- ConfigProvider configProvider = getConfigProvider(sdk);
- return configProvider != null
- && !(configProvider instanceof ConfigPropertiesBackedConfigProvider);
+ ConfigProperties configProperties =
+ io.opentelemetry.sdk.autoconfigure.internal.AutoConfigureUtil.getConfig(sdk);
+ return configProperties == null
+ || DECLARATIVE_CONFIG_PROPERTIES_BRIDGE_CLASS.isInstance(configProperties);
}
public static ConfigProvider getConfigProvider(AutoConfiguredOpenTelemetrySdk sdk) {
diff --git a/dependencyManagement/build.gradle.kts b/dependencyManagement/build.gradle.kts
index d393fb46a..7040faeba 100644
--- a/dependencyManagement/build.gradle.kts
+++ b/dependencyManagement/build.gradle.kts
@@ -2,11 +2,11 @@ plugins {
`java-platform`
}
-val otelVersion = "1.58.0"
+val otelVersion = "1.59.0"
val otelAlphaVersion = otelVersion.replaceFirst("(-SNAPSHOT)?$".toRegex(), "-alpha$1")
-val otelInstrumentationVersion = "2.24.0"
+val otelInstrumentationVersion = "2.25.0"
val otelInstrumentationAlphaVersion = otelInstrumentationVersion.replaceFirst("(-SNAPSHOT)?$".toRegex(), "-alpha$1")
-val otelContribAlphaVersion = "1.52.0-alpha"
+val otelContribAlphaVersion = "1.53.0-alpha"
val autoValueVersion = "1.11.1"
val dockerJavaVersion = "3.7.0"
diff --git a/deployments/cloudfoundry/buildpack/README.md b/deployments/cloudfoundry/buildpack/README.md
index c98ab0c4f..6c8fd885b 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.24.0
+$ cf set-env SPLUNK_OTEL_JAVA_VERSION 2.25.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 2add4ef4d..7d8345d02 100644
--- a/licenses/licenses.md
+++ b/licenses/licenses.md
@@ -1,7 +1,7 @@
# splunk-otel-javaagent
## Dependency License Report
-_2026-02-17 11:11:16 EET_
+_2026-02-17 13:55:38 EET_
## Apache License, Version 2.0
**1** **Group:** `com.squareup.okhttp3` **Name:** `okhttp` **Version:** `5.3.2`
@@ -20,79 +20,79 @@ _2026-02-17 11:11:16 EET_
> - **POM Project URL**: [https://github.com/square/okio/](https://github.com/square/okio/)
> - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
-**5** **Group:** `com.squareup.wire` **Name:** `wire-runtime` **Version:** `5.4.0`
+**5** **Group:** `com.squareup.wire` **Name:** `wire-runtime` **Version:** `5.5.0`
> - **POM Project URL**: [https://github.com/square/wire/](https://github.com/square/wire/)
> - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
-**6** **Group:** `com.squareup.wire` **Name:** `wire-runtime-jvm` **Version:** `5.4.0`
+**6** **Group:** `com.squareup.wire` **Name:** `wire-runtime-jvm` **Version:** `5.5.0`
> - **POM Project URL**: [https://github.com/square/wire/](https://github.com/square/wire/)
> - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
-**7** **Group:** `io.opentelemetry` **Name:** `opentelemetry-api` **Version:** `1.58.0`
+**7** **Group:** `io.opentelemetry` **Name:** `opentelemetry-api` **Version:** `1.59.0`
> - **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)
-**8** **Group:** `io.opentelemetry` **Name:** `opentelemetry-common` **Version:** `1.58.0`
+**8** **Group:** `io.opentelemetry` **Name:** `opentelemetry-common` **Version:** `1.59.0`
> - **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)
-**9** **Group:** `io.opentelemetry` **Name:** `opentelemetry-context` **Version:** `1.58.0`
+**9** **Group:** `io.opentelemetry` **Name:** `opentelemetry-context` **Version:** `1.59.0`
> - **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)
-**10** **Group:** `io.opentelemetry` **Name:** `opentelemetry-exporter-common` **Version:** `1.58.0`
+**10** **Group:** `io.opentelemetry` **Name:** `opentelemetry-exporter-common` **Version:** `1.59.0`
> - **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)
-**11** **Group:** `io.opentelemetry` **Name:** `opentelemetry-exporter-otlp` **Version:** `1.58.0`
+**11** **Group:** `io.opentelemetry` **Name:** `opentelemetry-exporter-otlp` **Version:** `1.59.0`
> - **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)
-**12** **Group:** `io.opentelemetry` **Name:** `opentelemetry-exporter-otlp-common` **Version:** `1.58.0`
+**12** **Group:** `io.opentelemetry` **Name:** `opentelemetry-exporter-otlp-common` **Version:** `1.59.0`
> - **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)
-**13** **Group:** `io.opentelemetry` **Name:** `opentelemetry-exporter-sender-okhttp` **Version:** `1.58.0`
+**13** **Group:** `io.opentelemetry` **Name:** `opentelemetry-exporter-sender-okhttp` **Version:** `1.59.0`
> - **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)
-**14** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk` **Version:** `1.58.0`
+**14** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk` **Version:** `1.59.0`
> - **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)
-**15** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-common` **Version:** `1.58.0`
+**15** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-common` **Version:** `1.59.0`
> - **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)
-**16** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-extension-autoconfigure-spi` **Version:** `1.58.0`
+**16** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-extension-autoconfigure-spi` **Version:** `1.59.0`
> - **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` **Name:** `opentelemetry-sdk-logs` **Version:** `1.58.0`
+**17** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-logs` **Version:** `1.59.0`
> - **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)
-**18** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-metrics` **Version:** `1.58.0`
+**18** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-metrics` **Version:** `1.59.0`
> - **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)
-**19** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-trace` **Version:** `1.58.0`
+**19** **Group:** `io.opentelemetry` **Name:** `opentelemetry-sdk-trace` **Version:** `1.59.0`
> - **Project URL**: [https://github.com/open-telemetry/opentelemetry-java](https://github.com/open-telemetry/opentelemetry-java)
> - **License URL**: [https://www.apache.org/licenses/LICENSE-2.0](Apache License, Version 2.0)
-**20** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-opamp-client` **Version:** `1.52.0-alpha`
+**20** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-opamp-client` **Version:** `1.53.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)
-**21** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-resource-providers` **Version:** `1.52.0-alpha`
+**21** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-resource-providers` **Version:** `1.53.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)
-**22** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-samplers` **Version:** `1.52.0-alpha`
+**22** **Group:** `io.opentelemetry.contrib` **Name:** `opentelemetry-samplers` **Version:** `1.53.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)
-**23** **Group:** `io.opentelemetry.instrumentation` **Name:** `opentelemetry-instrumentation-bom-alpha` **Version:** `2.24.0-alpha`
+**23** **Group:** `io.opentelemetry.instrumentation` **Name:** `opentelemetry-instrumentation-bom-alpha` **Version:** `2.25.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/version.gradle.kts b/version.gradle.kts
index 33329c9fc..8d7e110f8 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.25.0-SNAPSHOT"
+val distroVersion = "2.25.0"
allprojects {
version = distroVersion
-
-
+
+
@@ -76,11 +76,6 @@ see [Migrate from the SignalFx Java Agent](https://help.splunk.com/en/splunk-obs
-
-The following documentation refers to the in-development version of `splunk-otel-java`. Docs for the latest version ([v2.24.0](https://github.com/signalfx/splunk-otel-java/releases/latest)) can be found [here](https://github.com/signalfx/splunk-otel-java/blob/v2.24.0/README.md).
-
----
-
## Requirements
@@ -112,11 +107,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.24.0 is compatible
+The Splunk Distribution of OpenTelemetry Java version 2.25.0 is compatible
with:
* OpenTelemetry API version 1.57.0
-* OpenTelemetry Instrumentation for Java version 2.24.0
+* OpenTelemetry Instrumentation for Java version 2.25.0
## Snapshot builds
diff --git a/agent/license-overrides.txt b/agent/license-overrides.txt
index f977592df..efbdaf3ad 100644
--- a/agent/license-overrides.txt
+++ b/agent/license-overrides.txt
@@ -1,3 +1,2 @@
# opentelemetry-sdk-trace jar includes META-INF/maven/org.jctools/jctools-core Hopefully this will get removed in the next release and we won't need these overrides
-io.opentelemetry:opentelemetry-sdk-trace:1.58.0|https://github.com/open-telemetry/opentelemetry-java|Apache License, Version 2.0|https://www.apache.org/licenses/LICENSE-2.0
io.opentelemetry:opentelemetry-sdk-trace:1.59.0|https://github.com/open-telemetry/opentelemetry-java|Apache License, Version 2.0|https://www.apache.org/licenses/LICENSE-2.0
diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts
index d502b0cfb..9712e7e15 100644
--- a/buildSrc/build.gradle.kts
+++ b/buildSrc/build.gradle.kts
@@ -41,7 +41,7 @@ dependencies {
implementation(gradleApi())
implementation("com.diffplug.spotless:spotless-plugin-gradle:8.2.1")
- implementation("io.opentelemetry.instrumentation:gradle-plugins:2.23.0-alpha")
+ implementation("io.opentelemetry.instrumentation:gradle-plugins:2.25.0-alpha")
// keep these versions in sync with settings.gradle.kts
implementation("com.gradleup.shadow:shadow-gradle-plugin:9.3.1")
diff --git a/custom/src/main/java/io/opentelemetry/sdk/autoconfigure/AutoConfigureUtil.java b/custom/src/main/java/io/opentelemetry/sdk/autoconfigure/AutoConfigureUtil.java
index 976699657..daf67a332 100644
--- a/custom/src/main/java/io/opentelemetry/sdk/autoconfigure/AutoConfigureUtil.java
+++ b/custom/src/main/java/io/opentelemetry/sdk/autoconfigure/AutoConfigureUtil.java
@@ -23,7 +23,6 @@
import io.opentelemetry.api.incubator.config.ConfigProvider;
import io.opentelemetry.api.incubator.config.DeclarativeConfigProperties;
import io.opentelemetry.common.ComponentLoader;
-import io.opentelemetry.instrumentation.config.bridge.ConfigPropertiesBackedConfigProvider;
import io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties;
import io.opentelemetry.sdk.extension.incubator.fileconfig.YamlDeclarativeConfigProperties;
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.DistributionModel;
@@ -31,7 +30,6 @@
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.OpenTelemetryConfigurationModel;
import io.opentelemetry.sdk.resources.Resource;
import java.util.Map;
-import java.util.logging.Logger;
import java.util.stream.Collectors;
/**
@@ -45,7 +43,17 @@
*