OpenTelemetry - java
Notes
no notes yet
0.15.0 is planned to be the final release before 1.0.0. It is a release candidate and should mostly reflect our final API.
General
☢️ Breaking Changes
- Methods and classes deprecated in 0.14.x have been removed.
🌟 Miscellaneous
- The
opentelemetry-semconvmodule has been marked as-alphaand removed from the bom. This was done because the OpenTelemetry project has not decided on a specification for stability of semantic conventions or the specific telemetry produced by instrumentation. - The items in the
io.opentelemetry.semconv.trace.attributes.SemanticAttributeswhich were previously generated form the Resource semantic conventions have been deprecated. Please use the ones in the newio.opentelemetry.semconv.resource.attributes.ResourceAttributesclass.
📈 Enhancements
- A new
io.opentelemetry.semconv.resource.attributes.ResourceAttributeshas been introduced to hold the generated semantic attributes to be used in creatingResources.
🌟 Miscellaneous
- The SemanticAttributes class has been moved to a new module:
opentelemetry-semconvand repackaged into a new package:io.opentelemetry.semconv.trace.attributes. The oldSemanticAttributesclass will be removed in the next release. - The SPI interfaces for OpenTelemetry have been deprecated. We are moving to a new auto-configuration approach with the
new SDK auto-configuration module:
io.opentelemetry.sdk.autoconfigure. This module should be considered the officially supported auto-configuration library moving forward.
SDK
🛠️ Bugfixes:
- The Jaeger exporters will now properly populate the process service name from the Resource service.name attribute.
☢️ Breaking Changes
SamplingResult.Decisionhas been removed in favor of theio.opentelemetry.sdk.trace.samplers.SamplingDecisiontop-level class.Resource.merge(Resource)now will resolve conflicts by preferring theResourcepassed in, rather than the original.- The default Resource (accessible via
Resource.getDefault()) now includes a fallbackservice.nameattribute. The implication of this is that exporters that have configured fallback service names will only use them if the SDK is intentionally configured with a Resource that does not utilize the default Resource for its underlying Resource data. - The
Sampleris now specified when building theSdkTracerProviderdirectly, rather than being a part of the TraceConfig.
📈 Enhancements
Resource.getDefault()now includes a fallbackservice.nameattribute. Exporters that require aservice.nameshould acquire the fallback from the default resource, rather than having it configured in.
🌟 Miscellaneous
- Going forward, OTLP exporter endpoint specifications must include a scheme, either
http://orhttps://. We will support endpoints without schemes until the next release, at which point not providing a scheme will generate an error when trying to use them. This applies to the use of system properties, environment variables, or programmatic specifications of the endpoints. - The
exportOnlySampledconfiguration of theBatchSpanProcessorhas been deprecated and will be removed in the next release. - The
io.opentelemetry.sdk.resources.ResourceAttributeshas been deprecated and will be removed in the next release. Please use the newio.opentelemetry.semconv.resource.attributes.ResourceAttributesclass in theopentelemetry-semconvmodule. - The serviceName configuration option for the Jaeger and Zipkin exporters has been deprecated. In the next release, those
configuration options will be removed, and the fallback
service.namewill always be pulled from the default Resource.
Extensions
☢️ Breaking Changes
- The
otel.bsp.schedule.delay.millisenv var/system property configuration option for the batch span processor has been renamed tootel.bsp.schedule.delayto match the specification. - The
otel.bsp.export.timeout.millisenv var/system property configuration option for the batch span processor has been renamed tootel.bsp.export.timeoutto match the specification.
📈 Enhancements
- The
opentelemetry-sdk-extension-autoconfiguremodule will now additionally register the auto-configured SDK as the instance ofGlobalOpenTelemetrywhen used. - The
opentelemetry-sdk-extension-autoconfiguremodule now supports theotel.exporter.otlp.certificateconfiguration property for specifying a path to a trusted certificate for the OTLP exporters.