Skip to content

opentelemetry-collector

v0.156.0 Breaking

This release includes 1 breaking change for platform teams planning a safe upgrade.

Published 20d Tracing
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

prometheus monitoring observability opentelemetry telemetry

Affected surfaces

breaking_upgrade

Summary

AI summary

Updates 🧰 Bug fixes 🧰, 💡 Enhancements 💡, and 🛑 Breaking changes 🛑 across a mixed release.

Full changelog

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.156.0

End User Changelog

💡 Enhancements 💡

  • cmd/mdatagen: Add support for defining stability levels for resource attributes (#15312)
  • cmd/mdatagen: Add semantic convention reference to resource attributes (#15313)
  • processor/memory_limiter: Adding health events for the memorylimiter (#14700)
    Publish health event from memorylimiter using componentstatus.ReportStatus

🧰 Bug fixes 🧰

  • cmd/mdatagen: Removes the extra line in the documentation.md between extended description and table (#15458)

  • exporter/otlp_http: Treat errors parsing successful (2xx) HTTP response bodies as permanent errors to prevent retrying already-accepted data. (#15386)
    When a server returns a 2xx status but the response body exceeds the 64kB read limit,
    the body is truncated and proto unmarshaling fails. Previously this was treated as a
    retryable error, causing duplicate data to be exported. Now it is marked as a permanent
    error so the retry logic will not re-send data that was already accepted by the server.

  • pkg/config/configretry: Always validate BackOffConfig fields regardless of the Enabled flag. (#15437)

  • pkg/service: Ensure receivers always start after all other components (#15495)
    There was previously a race condition where multiple receivers using a shared internal implementation,
    such as the OTLP receiver, could start sending telemetry into a pipeline before all its components had fully started.

  • processor/memory_limiter: Fix degenerate collector performance when exporter has problems causing permanent CPU-burning GC loop (#4981)
    Forced GC runs now use exponential backoff when deemed ineffective
    (still above soft limit and less than 5% reclaimed) to avoid preventing
    recovery by overloading CPU with excessive GC runs. The cap on the
    backoff interval is exposed via max_gc_interval_when_soft_limited and
    max_gc_interval_when_hard_limited (both default 30s); set either to
    0 to disable backoff on that path.

  • provider/env: Fix empty env var default resolving to nil instead of empty string (#14587)
    When using ${env:VAR:-} with an unset variable, the empty default now correctly
    resolves to an empty string instead of nil.

API Changelog

🛑 Breaking changes 🛑

  • pkg/pprofile: add bounds checks to FromAttributeIndices (#15517)

💡 Enhancements 💡

  • cmd/mdatagen: Add field_name field to go_struct config in metadata.yaml to allow customizing the Go struct field name for generated config properties. (#15486)
  • cmd/mdatagen: Handle enum validators in generated config structs (#14805)
    Supported validators include enum.
  • cmd/mdatagen: Generate named Go types for primitive exported config schemas. (#15487)
    Primitive exported configs for string, integer, number, and boolean schemas now produce distinct exported types while default values and validation remain on referencing fields.

🧰 Bug fixes 🧰

  • pkg/pprofile: fix wrong error sentinel in SetString (#15511)

Breaking Changes

  • `pkg/pprofile`: add bounds checks to FromAttributeIndices

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

Track opentelemetry-collector

Get notified when new releases ship.

Sign up free

About opentelemetry-collector

OpenTelemetry Collector

All releases →

Related context

Related tools

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]