Releases: signalfx/splunk-otel-java
Release v0.12.0 (Release Candidate)
This release is intended to be the final release before 1.0.0.
This release uses OpenTelemetry Instrumentation for Java version 1.2.0. If you want to extend the instrumentation manually, we suggest using the OpenTelemetry Java API version 1.2.0. Please consult the release notes linked above for upstream changes.
☢️ Breaking Changes
- The metrics component will now be turned off by default. You can re-enable it by setting
SPLUNK_METRICS_ENABLED
totrue
.
🌟 Enhancements
- The agent will now set a resource attribute
splunk.distro.version
with its own version. - The CloudFoundry buildpack file for Splunk Distribution of OpenTelemetry Java will now be built as a part of the
release process and will be attached to the GitHub release.
Release v0.11.0
This release uses OpenTelemetry Instrumentation for Java version 1.2.0. If you want to extend the instrumentation manually, we suggest using the OpenTelemetry Java API version 1.2.0. Please consult the release notes linked above for upstream changes.
🗒 General notes
- Micrometer dependency was updated to version 1.7.0.
☢️ Breaking changes
- The Splunk Distribution of OpenTelemetry Java Instrumentation now uses the OTLP span exporter as the default. The OTLP
exporter supports thesplunk.access.token
configuration option and can be used to send spans directly to Splunk
cloud. The default OTLP exporter endpoint ishttp://localhost:4317
. You can still use the Jaeger exporter by
settingOTEL_TRACES_EXPORTER=jaeger-thrift-splunk
. - We have also changed the default endpoint of the SignalFx metrics exporter: it now points to
http://localhost:9943
,
which is the default endpoint of Splunk OpenTelemetry Connector
deployed onlocalhost
. - The agent now uses W3C
tracecontext
as the default trace propagation
mechanism; W3C Baggage is also enabled by default. You can switch to the previous B3
propagator by settingOTEL_PROPAGATORS=b3multi
. - Deprecated configuration property
splunk.context.server-timing.enabled
has been removed. You can use
splunk.trace-response-header.enabled
instead. - A lot of breaking changes were introduced to the javaagent tooling/instrumentation APIs - if you customize this project in any way please consult the upstream release notes for more details.
🌟 Enhancements
- The agent will now log a warning when the
service.name
resource attribute is not provided. - Context is now correctly propagated to reactor-netty callbacks (e.g.
HttpClient#doOnRequest()
) - introduced in this upstream repo PR.
Release v0.10.0
This release uses OpenTelemetry Instrumentation for Java version 1.1.0. If you want to extend the instrumentation manually, we suggest using the OpenTelemetry Java API version 1.1.0. Please consult the release notes linked above for upstream changes.
☢️ Breaking changes
- Removed the deprecated
signalfx.auth.token
configuration property: it was replaced bysplunk.access.token
in the previous release.
#171
❗ Deprecated
- Configuration property
splunk.context.server-timing.enabled
was renamed tosplunk.trace-response-header.enabled
. The old property name still works, but it will be removed in the next release.
#185
🌟 Added
- The Splunk Distribution of OpenTelemetry Java Instrumentation now gathers basic application and JVM metrics. By default, this feature is enabled and is sending metrics to a localhost SmartAgent instance: you can change the endpointby setting an appropriate configuration option. You can find a more detailed explanation about the feature here.
#135, #136 - Add metrics for JDBC connection pool: Apache Commons DBCP2. Aside from JVM metrics mentioned above, the javaagent also collects Apache Commons DBCP2 connection pool metrics now.
#144, #146, #148
📈 Changed
- Recommend using
deployment.environment
resource attribute instead ofenvironment
.
#139 - The SignalFx Java Agent migration guide has been brought up-to-date.
#141, #183 - The repo README and documentation was significantly revamped. You'll now find much more information about the features and configuration of this project. We've also added a FAQ and troubleshooting sections that aim to answer the most common problems that may arise while using the Splunk Distribution of OpenTelemetry Java Instrumentation.
#152, #155, #169, #187, #188, #191, #201 - Updated OpenTelemetry and OpenTelemetry Java Instrumentation versions to 1.1.0.
#199
Release v0.9.0
This release uses OpenTelemetry Instrumentation for Java version 1.0.0. If you want to extend the instrumentation manually, use the OpenTelemetry Java API version 1.0.0. Consult the release notes linked above for upstream changes.
☢️ Breaking changes
- Logging injection now sets fields
trace_id
,span_id
, andtrace_flags
, instead oftraceId
,spanId
, andsampled
open-telemetry/opentelemetry-java-instrumentation#2312
❗ Deprecation warning
- Property
signalfx.auth.token
has been renamed tosplunk.access.token
in #125. In this release both properties are accepted, but the next one will remove the deprecatedsignalfx.auth.token
configuration.
🛠️ Bug fixes
- AWS Lambda instrumentation will now propagate from HTTP headers if X-Ray is disabled open-telemetry/opentelemetry-java-instrumentation#2222
- Apache Camel instrumentation will not throw an NPE in app code when SQS propagation is not enabled open-telemetry/opentelemetry-java-instrumentation#2250
📈 Improvements
Release v0.8.0
This release uses OpenTelemetry Instrumentation for Java version 0.16.1. If you want to extend the instrumentation manually, use the OpenTelemetry Java API version 0.16.0. Consult the release notes linked above for upstream changes.
☢️ Breaking changes
- There were several configuration property name changes. Most notably,
otel.trace.exporter
has been renamed tootel.traces.exporter
. For other configuration renames property please consult the SDK release notes.
📈 Improvements
- Instrument Netty 4.0 to add Server-Timing header #108
🛠️ Bug fixes
- Fixed NPE in Apache Camel instrumentation happening when propagating SQS context open-telemetry/opentelemetry-java-instrumentation#2250
Release v0.7.0
This release uses OpenTelemetry Instrumentation for Java version 0.15.1. If you want to extend the instrumentation manually, use the OpenTelemetry Java API version 0.15.0. Consult the release notes linked above for upstream changes.
☢️ Breaking changes
- Property
otel.exporter
has been split intootel.trace.exporter
andotel.metrics.exporter
- There were lots of other configuration property name changes, please consult OpenTelemetry Javaagent release 0.15.0 for a more comprehensive list.
- Configuration property
otel.exporter.jaeger.service.name
no longer works with this release. To configure the service name please add theservice.name
key to the OpenTelemetry Resource, e.g. OTEL_RESOURCE_ATTRIBUTES=service.name=myservice.
📈 Improvements
- Collect WebLogic specific attributes #81
- Instrument Servlet API to add Server-Timing header #96
- Instrument Netty 3.8 to add Server-Timing header #100
- Enable Spring Batch item-level instrumentation by default #101
- Detect TomEE version #102
🛠️ Bug fixes
- Improve SQL sanitization performance and cache results open-telemetry/opentelemetry-java-instrumentation#2113 open-telemetry/opentelemetry-java-instrumentation#2094
- Use AWS trace propagator in AWS SDK v1 instrumentation without configuring it globally open-telemetry/opentelemetry-java-instrumentation#2117
- Propagate SQS trace context in AWS SDK v1 open-telemetry/opentelemetry-java-instrumentation#2114
- Enable SQS trace context propagation in Apache Camel open-telemetry/opentelemetry-java-instrumentation#2102
🧪 Test improvements
Release v0.6.0
This release uses OpenTelemetry Instrumentation for Java version 0.14.0. If you want to extend the instrumentation manually, use the OpenTelemetry Java API version 0.14.1. Consult the release notes linked above for upstream changes.
📈 Improvements
- Resource attributes are now exposed as system properties and available for use in logging patterns #76
- Agent jar no longer contains duplicate files #79
- WebLogic 12.1.3 is now present in the matrix and used in smoke tests #82
- AutoService is now used instead of plain service files #84
- Experimental Spring Batch instrumentation is now enabled by default #88
🛠️ Bug fixes
- Preconfigured custom propagators are no longer overridden by the agent open-telemetry/opentelemetry-java-instrumentation#2004
Release v0.5.0
This release uses OpenTelemetry Instrumentation for Java version 0.13.0. If you want to extend the instrumentation manually, use the OpenTelemetry Instrumentation for Java API version 0.13.1. Consult the release notes linked above for upstream changes.
This release contains no further changes apart from the upstream version.
Release v0.4.0
This release uses OpenTelemetry Instrumentation for Java version 0.12.0. If you want to extend the instrumentation manually, use the OpenTelemetry Instrumentation for Java API version 0.12.1. Consult the release notes linked above for upstream changes.
☢️ Breaking changes
- We use b3-multi propagation by default #41
🌟 New instrumentation
- Add server name and version to span attributes for Jetty (#46), Tomcat (#50), GlassFish (#51), WildFly (#57) and WebSphere Liberty (#53)
📈 Improvements
Release v0.3.3
Enable sending traces directly to ingest