Releases: open-telemetry/opentelemetry-java
Version 1.55.0
API
Common
- Improve GraalVM native image compatibility (#7160)
Traces
- Fix
TraceStatekey validation limits to match W3C specification (#7575)
Incubator
- Add
ExtendedOpenTelemetryAPI (#7496) - Add incubator implementation of composite sampling specification (#7626)
SDK
Traces
- Proactively avoid
Unsafeon Java 23+ to avoid triggering JVM warning message (#7691)
Metrics
- Add
setMeterConfigurator()support toMeterProvider(incubating API) (#7346)
Exporters
- OTLP: Configure metric exporter to use SDK's
MeterProviderfor internal metrics (#7541) - OTLP: Suppress logging of
InterruptedExceptionfrom managed OkHttp threads (#7565) - OTLP: Update dependency from
okhttp-jvmback tookhttpfor Gradle users, preservingokhttp-jvmfor Maven users (#7681) - Prometheus: Remove separate
otel_scope_infometric and always add scope labels to data points (#7398) - Prometheus: Update exporter dependencies to use protobuf-free formats (#7664)
Profiling
- Update profiles exporter to support proto v1.8.0-alpha changes (#7638)
- Add abstractions to assist with dictionary table assembly (#7717)
- Add abstractions to assist with sample composition (#7727)
Extensions
- Autoconfigure: Improve exception logging when running in Maven (#7336)
- Declarative configuration: Return
Resource(#7639) - Declarative configuration: Invoke auto-configure listeners (#7654)
- Declarative configuration: Add logging when incompatible types are found (#7693)
Shims
OpenTracing Shim
- Improve log levels in error scenarios (#6832)
Project tooling
- Respect
testJavaVersionproperty when running JMH benchmarks (#7697)
π Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@50c
@anuraaga
@anuragagarwal561994
@ArthurSens
@bidetofevil
@breedx-splk
@brendenehlers
@cbruegg
@cyrille-leclerc
@ericdallo
@fandreuz
@greatvovan
@iNikem
@jack-berg
@jaydeluca
@jeanbisutti
@jhalliday
@jkwatson
@laurit
@LikeTheSalad
@maryliag
@PeterF778
@priettt
@robsunday
@trask
@vidyadharamurthy
@zeitlinger
Version 1.54.1
This is a patch release on the previous 1.54.0 release, fixing the issue(s) below.
SDK
Exporters
- Prometheus: Fix regression in protobuf format export (#7664)
Version 1.54.0
API
Baggage
- Fix guard against ArrayIndexOutOfBoundsException in BaggageCodec (#7239)
SDK
Metrics
- Fix MetricData.getDoubleSumData() ClassCastException with custom implementations (#7597)
Exporters
- Fix HttpExporterBuilder.copy() and GrpcExporterBuilder.copy() to preserve component loader (#7596)
Extensions
- Autoconfigure: Remove support for old EnvironmentResourceProvider package name (#7622)
- Declarative config: Add DeclarativeConfigurationProvider SPI (#7472)
- Declarative config: Pass meter provider to avoid using the global OpenTelemetry instance (#7475)
Project tooling
- Update to Gradle v9 (#7590)
π Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@anuraaga
@breedx-splk
@chengchen
@halasz-csaba
@jack-berg
@jaydeluca
@jkwatson
@laurit
@opentelemetrybot
@rlacksgus97
@robsunday
@trask
@xiangtianyu
@zeitlinger
Version 1.53.0
SDK
- File based config will log the wrong file format, when applicable. (#7498)
Exporters
- Change
okhttpdependency tookhttp-jvm, which fixes missing class failures in transitive dependencies. (#7517)
π Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@breedx-splk
@jack-berg
@jaydeluca
@jkwatson
@laurit
@steffan-westcott
@the-clam
@trask
@zeitlinger
Version 1.52.0
API
Common
- Promote
ComponentLoaderto newopentelemetry-commonartifact, standardize SPI loading (#7446)
Context
- LazyStorage passes its ClassLoader when loading ContextStorageProvider SPI (#7424)
Incubator
- Add context and severity params to ExtendedLogger#isEnabled (#7268)
- Add new convenience methods for converting DeclarativeConfigProperties to config model (#7453)
SDK
- Add custom stacktrace renderer which is length limit aware (#7281)
Metrics
- Propagate flush to PeriodicMetricReader's metricExporter. (#7410)
Exporters
- OTLP - JdkHttpSender: ensure proper closure of HttpClient in shutdown method (#7390)
- OTLP: profile exporters fix and test improvements (#7442)
- OTLP: Loading Compressor SPI via ComponentLoader configured through setComponentLoader (#7428)
- Prometheus: add scope schema URL and attributes (#7356)
- Prometheus: extend prometheus declarative config support to include without_scope_info, with_resource_constant_labels (#6840)
Extensions
- Autoconfigure: fix race condition of
GlobalOpenTelemetryinitialization withAutoConfiguredOpenTelemetrySdkBuilder(#7365) - Declarative config: update to declarative config 1.0-rc.1 (#7436)
- Declarative config: resolve environment variable substitution for mixed quotes (#7433)
π Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@anuraaga
@ArthurSens
@atoulme
@breedx-splk
@dol
@fandreuz
@felixbarny
@github-advanced-security
@indigophox
@jack-berg
@jhalliday
@jkwatson
@JonasKunz
@jsuereth
@laurit
@mznet
@nchen000
@opentelemetrybot
@pellared
@robsunday
@trask
@tylerbenson
@vasantteja
@zeitlinger
Version 1.51.0
API
Context
- Fix context storage provider property name in log message (#7342)
SDK
- Experimental configurable exception.* attribute resolution for SdkTracerProvider, SdkLoggerProvider (#7266)
Exporters
- All exporters: implement new SemConv exporter health metrics, with configuration API for selecting schema version (#7265)
- OTLP: Add gRPC export for profiles signal type. (#7301)
- OTLP: Run JDK HTTP sender on non-daemon threads. (#7322)
- Prometheus: fix serialization of arrays (#7291)
- OTLP: exporter tolerates instances of LogRecordData when incubator is present (#7393)
Extensions
- Declarative config: Handle instrumentation node changes in yaml config file format 0.4 (#7357)
π Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@alex-kormukhin
@breedx-splk
@fandreuz
@HaloFour
@jack-berg
@jhalliday
@jkwatson
@JonasKunz
@kevinburkesegment
@LaurentTreguier
@LikeTheSalad
@onurkybsi
@opentelemetrybot
@robsunday
@SoftlySplinter
@trask
@zeitlinger
Version 1.50.0
API
Context
Incubator
- Add ExtendedLogRecordBuilder#setException (#7182)
- Add experimental support for log extended attributes (#7123)
SDK
- Remove Java9VersionSpecific clock implementation (#7221)
- Add addProcessorFirst to SdkTracerProviderBuilder, SdkLoggerProviderBuilder (#7243)
Logs
- Add
setLoggerConfiguratorsupport toLoggerProvider(#7332)
Metrics
- Add DelegatingMetricData (#7229)
- Spatial aggregation for async instruments with filtering views (#7264)
Exporters
- Prometheus: Add Authenticator support for PrometheusHttpServer (#7225)
- OTLP: Fix OTLP metric exporter toBuilder() loosing temporality (#7280)
- OTLP: Allow Otlp*MetricExporter's to publish export stats (#7255)
Extensions
- Declarative config: Add support for escaping env var substitution (#7033)
- Declarative config: update to opentelemetry-configuration 0.4 (#7064)
- Declarativeconfig: Refactor internals to add DeclarativeConfigContext (#7293)
Project tooling
π Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@anuraaga
@asafm
@breedx-splk
@Emily-Jiang
@fandreuz
@gavarava
@iNikem
@jack-berg
@jaydeluca
@jkwatson
@JonasKunz
@laurit
@LikeTheSalad
@onurkybsi
@opentelemetrybot
@ShadabGentle
@SoftlySplinter
@trask
@tsloughter
@tylerbenson
@vasantteja
@zeitlinger
Version 1.49.0
SDK
Trace
- Avoid linear queue.size() calls in span producers by storing queue size separately (#7141)
Exporters
- OTLP: Add support for setting exporter executor service (#7152)
- OTLP: Refine delay jitter for exponential backoff (#7206)
Extensions
- Autoconfigure: Remove support for otel.experimental.exporter.otlp.retry.enabled (#7200)
- Autoconfigure: Add stable cardinality limit property otel.java.metrics.cardinality.limit (#7199)
- Incubator: Add declarative config model customizer SPI (#7118)
π Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@breedx-splk
@jack-berg
@jkwatson
@laurit
@MrAlias
@raipc
@stevesea
@trask
@vbedrosova
@YuriyHolinko
@zeitlinger
Version 1.48.0
API
- Add some helpful logging attribute methods to
LogRecordBuilder(#7089)
Incubator
- Introduce ConfigProvider API. Rename
StructuredConfigPropertiestoDeclarativeConfigPropertiesand move toopentelemetry-api-incubator. RenameFileConfigurationtoDeclarativeConfiguration. (#6549)
SDK
- Log warning and adjust when BatchLogRecordProcessor, BatchSpanProcessor
maxExportBatchSizeexceedsmaxQueueSize. (#7045, #7148) - Fix bug causing
ThrottlingLoggerto log more than once per minute (#7156)
Metrics
- Remove obsolete
SdkMeterProviderUtil#setCardinalitylimitAPI (#7169)
Traces
- Fix bug preventing accurate reporting of span event dropped attribute count (#7142)
Exporters
- OTLP: remove support for
otel.java.experimental.exporter.memory_modewhich was previously replaced byotel.java.exporter.memory_mode(#7127) - OTLP: Extract sender parameters to config carrier class (incubating API) (#7151)
- OTLP: Add support for setting OTLP exporter service class loader (#7150)
Tooling
- Update android animalsniffer min API version to 23 (#7153)
π Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@breedx-splk
@brunobat
@chukunx
@codefromthecrypt
@devilcoolyue
@geoand
@github-advanced-security
@jack-berg
@jaydeluca
@jeanbisutti
@jkwatson
@joffrey-bion
@laurit
@LikeTheSalad
@naumaan123
@pbalint
@step-security-bot
@tealamore
@tongshushan
@trask
@zeitlinger
Version 1.47.0
API
Incubator
- Make
ExtendedTracereasier to use (#6943) - Add
ExtendedLogRecordBuilder#setEventNameand corresponding SDK and OTLP serialization (#7012) - BREAKING: Drop event API / SDK (#7053)
SDK
- Remove -alpha artifacts from runtime classpath of stable components (#6944)
Traces
- Bugfix: Follow spec on span limits, batch processors (#7030)
- Add experimental
SdkTracerProvider.setScopeConfigurator(ScopeConfigurator)for updatingTracerConfigat runtime (#7021)
Profiles
- Add AttributeKeyValue abstraction to common otlp exporters (#7026)
- Improve profiles attribute table handling (#7031)
Exporters
- Interpret timeout zero value as no limit (#7023)
- Bugfix - OTLP: Fix concurrent span reusable data marshaler (#7041)
- OTLP: Add ability to customize retry exception predicate (#6991)
- OTLP: Expand default OkHttp sender retry exception predicate (#7047, #7057)
Extensions
- Autoconfigure: Consistent application of exporter customizers when otel.{signal}.exporter=none (#7017)
- Autoconfigure: Promote EnvironmentResourceProvider to public API (#7052)
- Autoconfigure: Ensure
OTEL_PROPAGATORSstill works whenOTEL_SDK_DISABLED=true. (#7062)%
Testing
- Add W3CBaggagePropagator to
OpenTelemetryRule,OpenTelemetryExtension. (#7056)
π Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@breedx-splk
@edeweerd1A
@jack-berg
@jackshirazi
@jhalliday
@jkwatson
@Mahoney
@mikeblum
@onurkybsi
@trask
@YuriyHolinko
@zeitlinger