This release includes 2 breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
Affected surfaces
Summary
AI summaryBroad release touches π‘ Enhancements π‘, π§° Bug fixes π§°, π Breaking changes π, and π© Deprecations π©.
Full changelog
Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.157.0
End User Changelog
π Breaking changes π
-
pkg/exporterhelper: Replace histogram bucket boundaries forotelcol_exporter_queue_batch_send_size_bytesandotelcol_processor_batch_batch_send_size_byteswith a power-of-2 byte-scale set spanning 128 B to 16 MiB. (#15535)
The previous boundaries included many small sub-kilobyte buckets that were not useful for byte-scale
payloads, andotelcol_exporter_queue_batch_send_size_bytestopped out at 6000 bytes so nearly all
observations fell into the+Infoverflow bucket. The new boundaries are powers of two from 128 B
to 16777216 (16 MiB), giving a meaningful distribution for real batch payload sizes (including small
timeout-flushed batches) and keeping the two
metrics directly comparable on the same dashboards. Dashboards or alerts that hard-code specificle
values for these histograms will need to be updated. -
processor/batch: Replace histogram bucket boundaries forotelcol_processor_batch_batch_send_size_byteswith a power-of-2 byte-scale set spanning 128 B to 16 MiB. (#15535)
The previous boundaries included many small sub-kilobyte buckets that were not useful for byte-scale
payloads. The new boundaries are powers of two from 128 B to 16777216 (16 MiB), giving a meaningful
distribution for real batch payload sizes (including small timeout-flushed batches) and keeping the
metric directly comparable with
otelcol_exporter_queue_batch_send_size_byteson the same dashboards. Dashboards or alerts that
hard-code specificlevalues for this histogram will need to be updated.
π‘ Enhancements π‘
-
all: Bootstrapconfig.schema.yamlfor core components (debug/otlp/otlphttp exporters, otlp receiver, batch/memory_limiter processors, memory_limiter/zpages extensions). Implements Phase 1 of the component configuration schema roadmap RFC. (#14543)
Schemas are generated using theschemagentool from opentelemetry-collector-contrib and hand-tuned to capture
validation rules and references to shared library schemas (confighttp, configgrpc, configretry, exporterhelper,
etc.). A.schemagen.yamlsettings file and agenerate-schemasMakefile target are added so the schemas can
be regenerated reproducibly. -
pkg/service: Apply experimentalservice::telemetry::resource::detection/developmentresource detection to the Collector's internal telemetry resource. (#14311)
This follows the OpenTelemetry configuration schema by treating
service::telemetry::resource::detection/development::detectorsas detector selection.
Currently supported detector entries arecontainer,host,process, andservice.
See the OpenTelemetry Configuration Go support table and search for
ExperimentalResourceDetectorfor current detector support:
https://github.com/open-telemetry/opentelemetry-configuration/blob/main/language-support-status.md#goExample:
service: telemetry: resource: attributes: - name: foo value: bar detection/development: detectors: - host: {} -
pkg/service: Addservice.partialReloadfeature gate (Alpha) andservice.partialReloadReceiversfeature gate (Beta) that together restart only receivers on config reload when non-receiver config sections are unchanged, avoiding unnecessary disruption to processors, exporters, and extensions. Enable with--feature-gates=service.partialReload. (#5966)
π§° Bug fixes π§°
-
exporter/debug: Fix the scope index printed by thenormalverbosity marshaler; each scope was labelled with its parent resource's index instead of its own position (#15541)
Affected all four signals (logs, traces, metrics, profiles) β e.g. the second scope under a resource printed#0instead of#1. -
pkg/config/configgrpc: FixWaitForReadyoption not being applied to gRPC client connections. (#15615) -
pkg/featuregate: Fix panic when a--feature-gatesvalue contains an empty comma-separated element (e.g.--feature-gates=alpha,) (#15536)
An empty identifier now produces a returned error instead of an index-out-of-range panic during flag parsing. -
pkg/service: Fix collector startup panic when a resource detector emits a slice-valued attribute (e.g. theprocessdetector'sprocess.command_args) (#15571)
createResourcepassed the OTel SDK attribute value straight intopcommon.Value.FromRaw, which
only accepts[]anyfor slices, so any string, int, float, or bool slice resource attribute produced
an<Invalid value type>error and abortedservice.New. Slice-typed attributes are now converted
element-wise. -
pkg/service: Record status events reported by extensions (#15557)
API Changelog
π Breaking changes π
pkg/config/configgrpc: Remove theBalancerNamefunction (#9477)
Use theDefaultBalancerNameconstant instead.
π© Deprecations π©
pkg/xconfmap: DeprecateWithForceUnmarshaleroption. (#15614)
Useconfmap.WithForceUnmarshalerinstead.
π New components π
pkg/config/configstorage: Add a new configstorage module to support storage configuration fields. (#5832)
π‘ Enhancements π‘
pkg/confmap: AddWithForceUnmarshaleroption. (#15614)
This option allows forcing the top-level Unmarshal method even if the Conf is
already a parameter from an Unmarshal method. See the Godoc for more details.
Breaking Changes
- Removed `pkg/config/configgrpc.BalancerName` function; use `DefaultBalancerName` constant instead.
- Replaced histogram bucket boundaries for `otelcol_exporter_queue_batch_send_size_bytes` and `otelcol_processor_batch_batch_send_size_bytes` with powerβofβ2 byteβscale set from 128β―B to 16β―MiB.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Earlier breaking changes
- v0.154.0 `cmd/builder`: `--skip-get-modules` no longer regenerates go.mod file.
- v0.153.0 Enable reaggregation config generation by default in mdatagen; set `reaggregation_enabled: false` to retain previous behavior.
- v0.153.0 Stabilize pdata.enableRefCounting feature gate.
- v0.153.0 Stabilize telemetry.UseLocalHostAsDefaultMetricsAddress gate.
- v0.153.0 Remove pdata.useCustomProtoEncoding feature gate.
Beta — feedback welcome: [email protected]