Version 1.19.0
This release contains a large number of changes to the log signal following a series of significant changes to the log specification. The changes include renaming key classes like LogExporter
to LogRecordExporter
, and LogProcessor
to LogRecordProcessor
, and LogEmitter
to Logger
, and more. Additionally, a log API component has been added for emitting events and for writing log appenders. Note, the log API is not a substitute for traditional log frameworks like Log4j, JUL, SLF4J, or Logback. While the event portion of the API is intended for instrumentation authors and end users, the API for emitting LogRecords is not. See LoggerProvider and Logger javadoc for more details.
General
- Add
opentelemetry-bom
as a dependency toopentelemetry-bom-alpha
, ensuring synchronization between alpha and stable artifact versions.
API
API Extensions
- WARNING:
opentelemetry-extension-annotations
has been removed following its relocation to opentelemetry-java-instrumentation/instrumentation-annotations, which is published under coordinatesio.opentelemetry.instrumentation:opentelemetry-instrumentation-annotations:{version}
. We will push security patches to1.18.x
as needed. The latestopentelemetry-bom
will point to the latest published version, currently1.18.0
.
Logs
- Introduce log API for emitting events and writing log appenders. The artifact is available at coordinates
io.opentelemetry:opentelemetry-api-logs:1.19.0-alpha
.
SDK
Metrics
- Change exponential histogram bucket boundaries to be lower exclusive / upper inclusive, instead of lower inclusive / upper exclusive.
Logs
- BREAKING: Rename
SdkLogEmitterProvider
toSdkLoggerProvider
.OpenTelemetrySdkBuilder#setLogEmitterProvider
has changed toOpenTelemetrySdkBuilder#setLoggerProvider
.OpenTelemetrySdk#getSdkLogEmitterProvider
has changed toOpenTelemetrySdk#getSdkLoggerProvider
.AutoConfigurationCustomizer#addLogEmitterProviderCustomizer
has changed toAutoConfigurationCustomizer#addLoggerProviderCustomizer
. - BREAKING: Rename
LogEmitter
toLogger
. - BREAKING: Rename
LogExporter
toLogRecordExporter
.SystemOutLogExporter
has changed toSystemOutLogRecordExporter
.OtlpJsonLoggingLogExporter
has changed toOtlpJsonLoggingLogRecordExporter
.OtlpHttpLogExporter
has changed toOtlpHttpLogRecordExporter
.OtlpGrpcLogExporter
has changed toOtlpGrpcLogRecordExporter
.InMemoryLogExporter
has changed toInMemoryLogRecordExporter
. ConfigurableLogExporterProviderhas changed to
ConfigurableLogRecordExporterProvider`. - BREAKING: Rename
LogData
toLogRecordData
.TestLogData
has changed toTestLogRecordData
. - BREAKING: Rename
LogProcessor
toLogRecordProcessor
.BatchLogProcessor
has changed toBatchLogRecordProcessor
.SimpleLogProcessor
has changed toSimpleLogRecordProcessor
.
Exporter
- OTLP log record exporters now include dropped_attributes_count.
SDK Extensions
- Autoconfigure now supports an option to disable the SDK. If
otel.sdk.disabled=true
,AutoConfiguredOpenTelemetrySdk#getOpenTelemetrySdk()
returns a minimal (but not noop)OpenTelemetrySdk
with noop tracing, metric and logging providers. The same minimal instance is set toGlobalOpenTelemetry
. The now deprecated propertyotel.experimental.sdk.enabled
will continue to work in the same way during a transition period. - Fix
ProcessResource
directory separator to use/
or\
instead of:
or;
. - DEPRECATION: the
opentelemetry-sdk-extension-resource
module containing variousResourceProvider
implementations has been deprecated for removal in next major version. A copy of the code will instead be maintained in opentelemetry-java-instrumentation/instrumentation/resources/library and published under coordinatesio.opentelemetry.instrumentation:opentelemetry-resources:{version}
. - DEPRECATION: the
opentelemetry-sdk-extension-aws
module containing AWSResourceProvider
implementations has been deprecated for removal in next major version. A copy of the code will instead be maintained in opentelemetry-java-contrib/aws-resources and published under coordinatesio.opentelemetry.contrib:opentelemetry-aws-resources:{version}
.
OpenTracing Shim
- Fully support Baggage-only propagation.
Semantic conventions
- The semantic conventions have been updated to 1.13.0.
🙇 Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@anuraaga
@breedx-splk
@brunobat
@carlosalberto
@jack-berg
@jamesmoessis
@jkwatson
@jmacd
@joshua-bell-sonrai
@jsuereth
@mateuszrzeszutek
@rapphil
@SampathKumarAmex
@trask