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.