This release targets the OpenTelemetry SDK 1.15.0.
API
Add batch callback API, allowing a single callback to record measurements to multiple metric instruments.
SDK
Metrics
SdkMeterProvider#toString() now returns a useful string describing configuration.
Fix bug preventing proper function of Metrics SDK when multiple readers are present (#4436).
Fix reporting intervals for metrics for delta readers (#4400).
Exporter
BREAKING: merge all stable OTLP exporters into opentelemetry-exporter-otlp. opentelemetry-exporter-otlp-trace, opentelemetry-exporter-otlp-metrics, opentelemetry-exporter-otlp-http-trace, and opentelemetry-exporter-otlp-http-metrics are no longer published and their contents have been merged into a single artifact.
BREAKING: merge log OTLP exporters into opentelemetry-exporter-otlp-logs. opentelemetry-exporter-otlp-http-logs is no longer published and its contents have been merged into a single artifact.
Upgrade to OTLP protobuf version 0.18.0.
RetryInterceptor retries on SocketTimeoutException with no message.
Added JaegerGrpcSpanExporterBuilder#setMeterProvider(), enabling support of experimental jaeger span export metrics.
DEPRECATION: the opentelemetry-exporter-jaeger-proto module containing jaeger proto definitions and corresponding generated classes is deprecated for removal in next major version.
OTLP gRPC exporters support overriding :authority via OtlpGrpc*ExporterBuilder#addHeader("host", "my-authority-override").
SDK Extensions
BREAKING: Move ConfigureableMetricExporterProvider from opentelemetry-sdk-extension-autoconfigure to stable opentelemetry-sdk-extension-autoconfigure-spi.
Autoconfigure now supports multiple values for otel.metrics.exporter.
Autoconfigure now supports general attribute limits, applicable to span attributes, span event attributes, span link attributes, and log attributes.
Autoconfigure now supports an experimental option to disable the SDK. If otel.experimental.sdk.enabled=true, AutoConfiguredOpenTelemetrySdk#getOpenTelemetrySdk() returns a minimal (but not noop) OpenTelemetrySdk. The same minimal instance is set to GlobalOpenTelemetry.
New "get or default" methods have been added to ConfigProperties. E.g. ConfigProperties#getString("otel.metrics.exporter", "otlp") fetches the value for the property otel.metrics.exporter and returns otlp if it is not set.
Fix bug in ContainerResource provider that caused it to throw an exception in some instances when containerd is used.
Micrometer shim
Cache descriptions such that metrics with the same name use the first seen description.
🙇 Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
Add batch callback API, allowing a single callback to record measurements to multiple metric
instruments.
SDK
Metrics
SdkMeterProvider#toString() now returns a useful string describing configuration.
Fix bug preventing proper function of Metrics SDK when multiple readers are
present (#4436).
Fix reporting intervals for metrics for delta
readers (#4400).
Exporter
BREAKING: merge all stable OTLP exporters into opentelemetry-exporter-otlp.
opentelemetry-exporter-otlp-trace, opentelemetry-exporter-otlp-metrics,
opentelemetry-exporter-otlp-http-trace, and opentelemetry-exporter-otlp-http-metrics are no
longer published and their contents have been merged into a single artifact.
BREAKING: merge log OTLP exporters into opentelemetry-exporter-otlp-logs.
opentelemetry-exporter-otlp-http-logs is no longer published and its contents have been merged
into a single artifact.
Upgrade to OTLP protobuf version 0.18.0.
RetryInterceptor retries on SocketTimeoutException with no message.
Added JaegerGrpcSpanExporterBuilder#setMeterProvider(), enabling support of experimental jaeger
span export metrics.
DEPRECATION: the opentelemetry-exporter-jaeger-proto module containing jaeger proto definitions
and corresponding generated classes is deprecated for removal in next major version.
OTLP gRPC exporters support overriding :authority
via OtlpGrpc*ExporterBuilder#addHeader("host", "my-authority-override").
SDK Extensions
BREAKING: Move ConfigureableMetricExporterProvider
from opentelemetry-sdk-extension-autoconfigure to
stable opentelemetry-sdk-extension-autoconfigure-spi.
Autoconfigure now supports multiple values for otel.metrics.exporter.
Autoconfigure now
supports general attribute limits,
applicable to span attributes, span event attributes, span link attributes, and log attributes.
Autoconfigure now supports an experimental option to disable the SDK.
If otel.experimental.sdk.enabled=true, AutoConfiguredOpenTelemetrySdk#getOpenTelemetrySdk()
returns a minimal (but not noop) OpenTelemetrySdk. The same minimal instance is set
to GlobalOpenTelemetry.
New "get or default" methods have been added to ConfigProperties.
E.g. ConfigProperties#getString("otel.metrics.exporter", "otlp") fetches the value for the
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps opentelemetry-api from 1.14.0 to 1.15.0.
Release notes
Sourced from opentelemetry-api's releases.
... (truncated)
Changelog
Sourced from opentelemetry-api's changelog.
... (truncated)
Commits
b7779be
Prepare release 1.15.0 (#4522)37772d7
Prepare changelog for 1.15.0 (#4521)86cc4bc
Add some missing since annotations (#4520)b7347f6
Update dependencies (#4519)9dc1be5
Allow overriding OTLP gRPC authority. (#4514)29f274e
Handle ContainerResource edge case (#4518)7d80a99
Add experimental option to disable autoconfigured opentelemetry SDK (#4489)d9c8e70
Tighten up metrics sdk javadoc (#4508)77f5a17
Add default getters to ConfigProperties (#4500)83bfb84
Migrate to assertj (#4512)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)