github open-telemetry/opentelemetry-collector v0.157.0
v1.63.0/v0.157.0

latest releases: receiver/v1.63.0, processor/v1.63.0, pipeline/v1.63.0...
12 hours ago

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 for otelcol_exporter_queue_batch_send_size_bytes and otelcol_processor_batch_batch_send_size_bytes with 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, and otelcol_exporter_queue_batch_send_size_bytes topped out at 6000 bytes so nearly all
    observations fell into the +Inf overflow 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 specific le
    values for these histograms will need to be updated.

  • processor/batch: Replace histogram bucket boundaries for otelcol_processor_batch_batch_send_size_bytes with 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_bytes on the same dashboards. Dashboards or alerts that
    hard-code specific le values for this histogram will need to be updated.

💡 Enhancements 💡

  • all: Bootstrap config.schema.yaml for 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 the schemagen tool from opentelemetry-collector-contrib and hand-tuned to capture
    validation rules and references to shared library schemas (confighttp, configgrpc, configretry, exporterhelper,
    etc.). A .schemagen.yaml settings file and a generate-schemas Makefile target are added so the schemas can
    be regenerated reproducibly.

  • pkg/service: Apply experimental service::telemetry::resource::detection/development resource detection to the Collector's internal telemetry resource. (#14311)
    This follows the OpenTelemetry configuration schema by treating
    service::telemetry::resource::detection/development::detectors as detector selection.
    Currently supported detector entries are container, host, process, and service.
    See the OpenTelemetry Configuration Go support table and search for
    ExperimentalResourceDetector for current detector support:
    https://github.com/open-telemetry/opentelemetry-configuration/blob/main/language-support-status.md#go

    Example:

    service:
      telemetry:
        resource:
          attributes:
            - name: foo
              value: bar
          detection/development:
            detectors:
              - host: {}
  • pkg/service: Add service.partialReload feature gate (Alpha) and service.partialReloadReceivers feature 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 the normal verbosity 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 #0 instead of #1.

  • pkg/config/configgrpc: Fix WaitForReady option not being applied to gRPC client connections. (#15615)

  • pkg/featuregate: Fix panic when a --feature-gates value 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. the process detector's process.command_args) (#15571)
    createResource passed the OTel SDK attribute value straight into pcommon.Value.FromRaw, which
    only accepts []any for slices, so any string, int, float, or bool slice resource attribute produced
    an <Invalid value type> error and aborted service.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 the BalancerName function (#9477)
    Use the DefaultBalancerName constant instead.

🚩 Deprecations 🚩

  • pkg/xconfmap: Deprecate WithForceUnmarshaler option. (#15614)
    Use confmap.WithForceUnmarshaler instead.

🚀 New components 🚀

  • pkg/config/configstorage: Add a new configstorage module to support storage configuration fields. (#5832)

💡 Enhancements 💡

  • pkg/confmap: Add WithForceUnmarshaler option. (#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.

Don't miss a new opentelemetry-collector release

NewReleases is sending notifications on new releases.