github open-telemetry/opentelemetry-collector v0.152.0
v1.58.0/v0.152.0

latest releases: receiver/v1.58.0, processor/v1.58.0, pipeline/v1.58.0...
6 hours ago

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

End User Changelog

💡 Enhancements 💡

  • pkg/exporterhelper: Add otelcol_exporter_in_flight_requests metric to track the number of export requests currently in-flight per exporter. (#15009)
    This UpDownCounter increments in startOp and decrements in endOp, allowing operators to monitor
    concurrent export activity and detect when an exporter is saturating its worker pool.

🧰 Bug fixes 🧰

  • pkg/confighttp: Close the original request body after reading block-format Content-Encoding: snappy requests. (#15262)

  • pkg/confighttp: Recover from panics in decompression libraries, return HTTP 400 instead of 500. (#13228)

  • pkg/confighttp: Enforce max_request_body_size on Content-Encoding: snappy requests before the decoded buffer is allocated. (#15252)

  • pkg/otelcol: Stop emitting verbose gRPC transport messages at WARN during normal client disconnect. (#5169)
    grpc-go gates chatty per-RPC notices (e.g. "HandleStreams failed to read frame:
    connection reset by peer") behind LoggerV2.V(2). zapgrpc.Logger.V conflates
    grpclog verbosity with zap severity, so V(2) returns true whenever WARN is
    enabled and these messages emit at WARN. Wrap the installed grpclog.LoggerV2
    with a corrected V() that compares against a fixed verbosity threshold,
    matching grpclog's intended semantics. See uber-go/zap#1544.

  • pkg/pdata: pcommon.Value.AsString no longer HTML-escapes <, >, and & inside ValueTypeMap and ValueTypeSlice values, matching the behavior already used for ValueTypeStr. (#14662)

  • pkg/service: Fix Prometheus config defaults mismatch when host is explicitly set in telemetry configuration. (#13867)
    When users explicitly configured the telemetry metrics section (e.g. to change the host),
    the Prometheus exporter boolean fields (WithoutScopeInfo, WithoutUnits, WithoutTypeSuffix)
    defaulted to nil/false instead of true, causing metric name format changes compared to the
    implicit default configuration. This fix applies the correct defaults during config unmarshaling.

  • pkg/service: Return noop tracer provider when no trace processors are defined (#15135)

API Changelog

🚩 Deprecations 🚩

  • pkg/xconfmap: Deprecate xconfmap.Validator and confmap.Validate in favor of confmap.Validator and confmap.Validate. (#15142)

💡 Enhancements 💡

  • cmd/mdatagen: Add go_struct.ignore_default flag to suppress default value generation for individual config fields. (#15156)
    Setting go_struct.ignore_default: true on a config field causes mdatagen to omit that field's default
    from the generated createDefaultConfig function, emitting nil for pointer fields
    and configoptional.None for optional fields.

  • pkg/confmap: Add the confmap.Validator interface and confmap.Validate function for configuration validation. (#15142)
    Config structs should generally implement the interface to provide validation
    of their fields. The confmap.Validate function can be used to validate
    config structs in testing, but is only meant to be called at runtime by the
    Collector itself.

🧰 Bug fixes 🧰

  • pkg/pdata: pcommon.Value.AsString no longer HTML-escapes <, >, and & inside ValueTypeMap and ValueTypeSlice values, matching the behavior already used for ValueTypeStr. (#14662)

Don't miss a new opentelemetry-collector release

NewReleases is sending notifications on new releases.