Skip to content

Releases: open-telemetry/opentelemetry-collector

v1.57.0/v0.151.0

28 Apr 18:57
v0.151.0
ec10822

Choose a tag to compare

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

End User Changelog

πŸ›‘ Breaking changes πŸ›‘

  • cmd/builder: In the generated Collector source, the replace statements in the Go module will now use relative paths by default. (#15097)
    We expect that this will not break existing use-cases where the generated collector is only used in an interim manner for builds. It enables the possibility of tracking the generated Collector code as a longer living artifact, allowing it to be run on any machine (whereas absolute paths will be different depending on the machine the Collector source is generated on.) We have added dist::use_absolute_replace_paths to go back to the absolute path behaviour in the case where there is an unforeseen use-case that requires absolute paths.

  • pkg/confighttp: Stabilize framedSnappy feature gate. (#15096)

πŸ’‘ Enhancements πŸ’‘

  • all: Add declarative schema support for service telemetry resource configuration. (#14411)
    The service::telemetry::resource configuration now accepts the declarative schema with explicit name/value pairs:

    service:
      telemetry:
        resource:
          schema_url: https://opentelemetry.io/schemas/1.38.0
          attributes:
            - name: service.name
              value: my-collector
            - name: host.name
              value: collector-host

    The legacy inline attribute map format is still supported for backward compatibility:

    service:
      telemetry:
        resource:
          service.name: my-collector
          host.name: collector-host

    Note: resource.detectors is accepted for forward compatibility but is not yet applied by the collector.

  • exporter/otlp_grpc: Added the server.address and url.path attributes to metrics generated by the otlp exporter. (#14998)

  • exporter/otlp_http: Added the server.address and url.path attributes to metrics generated by the otlp_http exporter. (#14998)

  • pkg/config/configgrpc: Add UserAgent field to ClientConfig to allow overriding the default gRPC user-agent string. (#14686)
    The otlp gRPC exporter was unconditionally setting the User-Agent via
    grpc.WithUserAgent() at dial time, which takes precedence over per-call
    metadata, causing any user-configured User-Agent to be silently discarded.
    A dedicated UserAgent field has been added to ClientConfig which, when
    set, is used in the dial option directly instead of the default BuildInfo-derived string.

  • pkg/config/configgrpc: Accept gRPC resolver scheme URIs in client endpoint (e.g. passthrough:///host:port) to allow control over name resolution (#14990)
    After the migration to grpc.NewClient, some gRPC client components such as the OTLP
    exporter experienced connection issues in dual-stack DNS environments. This can now be
    fixed by using the passthrough:/// gRPC resolver scheme in the endpoint field.

  • pkg/config/confignet: Add support for Windows Named Pipe (npipe) transport (#15085)

  • pkg/service: Emit a warning when using the old v0.2.0 declarative config format (#15088)

🧰 Bug fixes 🧰

  • pkg/otelcol: Print components exactly once in the otelcol components command (#14682)
    This resolves an issue where aliased components were skipped.

  • pkg/otelcol: Synchronize Collector Run and Shutdown lifecycles so that Shutdown blocks until Run completes all cleanup. (#4947)
    Shutdown now blocks until Run finishes cleanup, matching http.Server semantics.
    If Shutdown is called before Run, the next Run call returns nil after cleaning up
    the config provider.

  • pkg/pdata: Use spec-compliant string representation for NaN, Infinity, and -Infinity in Value.AsString(). (#14487)

  • pkg/pprofile: Fix data corruption of resource and scope attributes after marshal-unmarshal-merge round-trip. (#15084)

  • pkg/service: Non-string resource attributes in telemetry configuration now return an error instead of panicking (#15171)

  • pkg/xscraperhelper: fix the merge of profiles in the profiling scraper helpers (#14790)

  • receiver/otlp: Fix profiles receiver reporting its samples as spans (#15089)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • receiver/otlp: Config.Protocols is now a named field instead of an anonymous embedded field. (#15178)
    Access to cfg.GRPC and cfg.HTTP must be updated to cfg.Protocols.GRPC and cfg.Protocols.HTTP.

🚩 Deprecations 🚩

  • cmd/mdatagen: The DefaultMetricsBuilderConfig function is deprecated. Use NewDefaultMetricsBuilderConfig instead. (#15165)
    The generated DefaultMetricsBuilderConfig function has been renamed to NewDefaultMetricsBuilderConfig
    to follow Go naming conventions. The old function is kept as a deprecated wrapper and will be removed
    in a future release.

πŸ’‘ Enhancements πŸ’‘

  • cmd/mdatagen: Handle default values for configuration fields in generated code in mdatagen. (#14560)

  • cmd/mdatagen: Add opt-in override_value support for resource_attributes config via override_value_enabled flag (#15109)
    Components can opt in by setting override_value_enabled: true in their metadata.yaml.
    When enabled, per-attribute config types are generated with typed override_value fields
    that let users override resource attribute values in the collector configuration.
    Components without the flag continue to use the shared ResourceAttributeConfig type.

  • cmd/mdatagen: Extend mdatagen config code generation to correctly handle default values for allOf embedded references (#14560)

  • cmd/mdatagen: Handle string validators in generated config structs (#14807)
    Supported validators include minLength, maxLength and pattern.

  • pkg/config/configgrpc: Add a DefaultBalancerName constant for the name of the default load balancer (#15139)
    This replaces the BalancerName function.

  • pkg/config/configgrpc: Accept gRPC resolver scheme URIs in client endpoint (e.g. passthrough:///host:port) to allow control over name resolution (#14990)
    After the migration to grpc.NewClient, some gRPC client components such as the OTLP
    exporter experienced connection issues in dual-stack DNS environments. This can now be
    fixed by using the passthrough:/// gRPC resolver scheme in the endpoint field.

  • pkg/exporterhelper: Added the WithAttrs option to allow custom attributes on exporter metrics (#14998)

🧰 Bug fixes 🧰

  • cmd/mdatagen: Fix a bug in mdatagen where the allOf field was not being properly handled, resulting in incorrect generation of data models. (#15153)

  • pkg/otelcol: Synchronize Collector Run and Shutdown lifecycles so that Shutdown blocks until Run completes all cleanup. (#4947)
    Shutdown now blocks until Run finishes cleanup, matching http.Server semantics.
    If Shutdown is called before Run, the next Run call returns nil after cleaning up
    the config provider.

  • pkg/pdata: Use pool-aware constructors in gRPC service handlers so top-level request structs participate in the sync.Pool lifecycle. (#14763)
    The gRPC service handlers for all signal types allocated the top-level
    ExportXxxServiceRequest with bare new(), bypassing the sync.Pool when
    pdata.useProtoPooling is enabled. This caused objects returned to the pool
    via Delete to never be retrieved. The handlers now use the pool-aware
    New*() constructors.

v1.56.0/v0.150.0

13 Apr 11:06
v0.150.0
255690f

Choose a tag to compare

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

End User Changelog

πŸ’‘ Enhancements πŸ’‘

🧰 Bug fixes 🧰

  • exporter/debug: Guard from out of bounds profiles dictionary indices (#14803)

  • pdata/pprofile: create a copy when the input is marked as read-only (#15080)

  • pkg/otelcol: Fix missing default values in unredacted print-config command by introducing confmap.WithUnredacted MarshalOption. (#14750)
    Resolves an issue where the unredacted mode output omitted all default-valued options. By introducing a new MarshalOption to disable redaction directly at the confmap encoding level, the unredacted mode now preserves all component defaults natively without requiring post-processing.

  • pkg/service: Headers on the internal telemetry OTLP exporter are now redacted when the configuration is marshaled (#14756)

API Changelog

πŸ’‘ Enhancements πŸ’‘

  • cmd/mdatagen: Add custom validation support for Go config structs (#14563)

v1.55.0/v0.149.0

31 Mar 13:43
v0.149.0
01b07fc

Choose a tag to compare

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

End User Changelog

πŸ›‘ Breaking changes πŸ›‘

  • pkg/service: Remove service_name, service_instance_id, and service_version as constant labels on every internal metric datapoint. These attributes are already present in target_info and were being duplicated on each series for OpenCensus backwards compatibility. (#14811)
    Previously, the collector stamped every internal metric series (e.g. otelcol_process_runtime_heap_alloc_bytes)
    with service_name, service_instance_id, and service_version labels to match the old OpenCensus behavior.
    These attributes are now only present in the target_info metric, which is the correct Prometheus/OTel convention.
    Users who filter or group by these labels on individual metrics will need to update their queries to use
    target_info joins instead.

πŸ’‘ Enhancements πŸ’‘

  • all: Move aix/ppc64 to tier 3 support (#13380)

  • all: Upgrade the profiles stability status to alpha (#14817)
    The following components have their profiles status upgraded from development to alpha:

    • pdata/pprofile
    • connector/forward
    • exporter/debug
    • receiver/nop
    • exporter/nop
    • exporter/otlp_grpc
    • exporter/otlp_http
  • cmd/mdatagen: Add semconv reference for attributes (#13297)

🧰 Bug fixes 🧰

  • cmd/mdatagen: Fix entity code generation so extra_attributes are emitted as resource attributes instead of entity descriptive attributes. (#14778)

API Changelog

πŸ’‘ Enhancements πŸ’‘

  • cmd/mdatagen: Added ability to generate required fields validation to config go structs generated by mdatagen (#14563)

🧰 Bug fixes 🧰

  • cmd/mdatagen: Fix RootPackage to use go module root instead of git repo root (#14801)
    Fixes issue with running mdatagen when the git repository root is different from the go module root.

v1.54.0/v0.148.0

17 Mar 13:42
v0.148.0
ffebda4

Choose a tag to compare

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

End User Changelog

❗ Known Issues ❗

  • service: The collector's internal Prometheus metrics endpoint (:8888) now emits OTel service labels with underscore
    names (service_name, service_instance_id, service_version) instead of dot-notation names (service.name,
    service.instance.id, service.version). Users scraping this endpoint with the Prometheus receiver will see these renamed
    labels in resource and datapoint attributes. As a workaround, add the following metric_relabel_configs to your scrape
    config in prometheus receiver:
    metric_relabel_configs:
      - source_labels: [service_name]
        target_label: service.name
      - source_labels: [service_instance_id]
        target_label: service.instance.id
      - source_labels: [service_version]
        target_label: service.version
      - regex: service_name|service_instance_id|service_version
        action: labeldrop
    See #14814 for details and updates.

πŸ›‘ Breaking changes πŸ›‘

  • all: Change metric units to be singular to match OTel specification, e.g. {requests} -> {request} (#14753)

πŸ’‘ Enhancements πŸ’‘

  • cmd/mdatagen: Add deprecated_type field to allow specifying an alias for component types. (#14718)
  • cmd/mdatagen: Generate entity-scoped MetricsBuilder API that enforces entity-metric associations at compile time (#14659)
  • cmd/mdatagen: Skip generating reaggregation config options for metrics that have no aggregatable attributes. (#14689)
  • pkg/service: The internal status reporter no longer drops repeated Ok and RecoverableError statuses (#14282)
    Status events can now carry metadata and there's value in allowing them to be emitted despite the status value itself
    not changing.

🧰 Bug fixes 🧰

  • cmd/builder: Add .exe to output binary names when building for Windows targets. (#12591)

  • exporter/debug: Add printing of metric metadata in detailed verbosity. (#14667)

  • exporter/otlp_grpc: Prevent nil pointer panic when push methods are called before the OTLP exporter initializes its gRPC clients. (#14663)
    When the sending queue and retry are disabled, calling ConsumeTraces,
    ConsumeMetrics, ConsumeLogs, or ConsumeProfiles before the OTLP exporter
    initializes its gRPC clients could cause a nil pointer dereference panic.
    The push methods now return an error instead of panicking.

  • exporter/otlp_http: Show the actual destination URL in error messages when request URL is modified by middleware. (#14673)
    Unwraps the *url.Error returned by http.Client.Do() to prevent misleading error logs when a middleware extension dynamically updates the endpoint.

  • pdata/pprofile: Switch the dictionary of dictionary tables entries only once when merging profiles (#14709)
    For dictionary table data, we used to switch their dictionaries when doing
    the switch for the data that uses them.
    However, when an entry is associated with multiple other data (several
    samples can use the same stack), we would have been switching the
    dictionaries of the entry multiple times.

    We now switch dictionaries for dictionary table data only once, before
    switching the resource profiles.

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • cmd/mdatagen: Generate a per-metric config type <MetricName>Config for each metric when reaggregation_enabled: true (#14689)
    Metrics with aggregatable attributes get AggregationStrategy and EnabledAttributes []<MetricName>AttributeKey
    fields; others get Enabled only. Typed attribute key constants (e.g. DefaultMetricAttributeKeyStringAttr)
    replace []string, eliminating runtime attribute slice allocations. Validation errors now list valid attributes
    and strategies by name. Components using reaggregation_enabled: true will need to update references to MetricConfig.

  • pdata/pprofile: Update protoID for message Sample fields (#14652)

πŸ’‘ Enhancements πŸ’‘

  • cmd/mdatagen: Extend mdatagen tool to generate go config structs for OpenTelemetry collector components. (#14561)
    The component config go code is generated from config section of the metadata.yaml file.

  • cmd/mdatagen: Extend mdatagen tool to generate config JSON schema for OpenTelemetry components. (#14543)
    The component config JSON schema is generated from config section of the metadata.yaml file.

  • cmd/mdatagen: Schema generation for mdatagen-controlled config parts (#14562)
    The schema is generated in separate yaml file and used to create full component schema.

  • pdata/pprofile: Implement reference based attributes in Profiles (#14546)

  • pkg/pdata: Upgrade the OTLP protobuf definitions to version 1.10.0 (#14766)

  • pkg/service: The internal status reporter no longer drops repeated Ok and RecoverableError statuses (#14282)
    Status events can now carry metadata and there's value in allowing them to be emitted despite the status value itself
    not changing.

  • pkg/xexporterhelper: Add logic to cleanup partitions from memory which are not being used for specific time period. (#14526)

  • pkg/xpdata: Add NewEntity constructor, Entity.CopyToResource, and EntityAttributeMap.All to pdata/xpdata/entity (#14659)

🧰 Bug fixes 🧰

  • cmd/mdatagen: Preserve custom extensions (e.g., x-customType, x-pointer) during schema reference resolution. (#14713, #14565)
    Fixes an issue where custom properties defined locally on a node were
    overwritten and lost when resolving a $ref to an external/internal schema.

  • pkg/xexporterhelper: Fix race when partition is being removed from LRU and new items are being added at the same time. (#14526)

v1.53.0/v0.147.0

02 Mar 15:09
v0.147.0
8ae9937

Choose a tag to compare

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

End User Changelog

πŸ’‘ Enhancements πŸ’‘

  • exporter/debug: Output bucket counts for exponential histogram data points in normal verbosity. (#10463)
  • pkg/exporterhelper: Add metadata_keys configuration to sending_queue.batch.partition to partition batches by client metadata (#14139)
    The metadata_keys configuration option is now available in the sending_queue.batch.partition section for all exporters.
    When specified, batches are partitioned based on the values of the listed metadata keys, allowing separate batching per metadata partition. This feature
    is automatically configured when using exporterhelper.WithQueue().

🧰 Bug fixes 🧰

  • cmd/builder: Fix duplicate error output when CLI command execution fails in the builder tool. (#14436)

  • cmd/mdatagen: Fix duplicate error output when CLI command execution fails in the mdatagen tool. (#14436)

  • cmd/mdatagen: Fix semconv URL validation for metrics with underscores in their names (#14583)
    Metrics like system.disk.io_time now correctly validate against semantic convention URLs containing underscores in the anchor tag.

  • extension/memory_limiter: Use ChainUnaryInterceptor instead of UnaryInterceptor to allow multiple interceptors. (#14634)
    If multiple extensions that use the UnaryInterceptor are set the binary panics at start time.

  • extension/memory_limiter: Add support for streaming services. (#14634)

  • pkg/config/configmiddleware: Add context.Context to HTTP middleware interface constructors. (#14523)
    This is a breaking API change for components that implement or use extensionmiddleware.

  • pkg/confmap: Fix another issue where configs could fail to decode when using interpolated values in string fields. (#14034)
    For example, a resource attribute can be set via an environment variable to a string that is parseable as a number, e.g. 1234.

    (A similar bug was fixed in a previous release: that one was triggered when the field was nested in a struct,
    whereas this one is triggered when the field internally has type "pointer to string" rather than "string".)

  • pkg/otelcol: The featuregate subcommand now rejects extra positional arguments instead of silently ignoring them. (#14554)

  • pkg/queuebatch: Fix data race in partition_batcher where resetTimer() was called outside mutex, causing concurrent timer.Reset() calls and unpredictable batch flush timing under load. (#14491)

  • pkg/scraperhelper: Log scrapers now emit log-appropriate receiver telemetry (#14654)
    Log scrapers previously emitted the same receiver telemetry as metric scrapers,
    such as the otelcol_receiver_accepted_metric_points metric (instead of otelcol_receiver_accepted_log_records),
    or spans named receiver/myreceiver/MetricsReceived (instead of receiver/myreceiver/LogsReceived).

    This did not affect scraper-specific spans and metrics.

  • processor/batch: Fixes a bug where the batch processor would not copy SchemaUrl metadata from resource and scope containers during partial batch splits. (#12279, #14620)

API Changelog

πŸ’‘ Enhancements πŸ’‘

  • pkg/exporterhelper: Add metadata_keys configuration to sending_queue.batch.partition to partition batches by client metadata (#14139)
    The metadata_keys configuration option is now available in the sending_queue.batch.partition section for all exporters.
    When specified, batches are partitioned based on the values of the listed metadata keys, allowing separate batching per metadata partition. This feature
    is automatically configured when using exporterhelper.WithQueue().

  • pkg/xexporterhelper: Add code structure to handle unbounded partitions in sending queue. (#14526)

🧰 Bug fixes 🧰

  • pkg/config/configmiddleware: Add context.Context to gRPC middleware interface constructors. (#14523)
  • pkg/extensionmiddleware: Add context.Context to gRPC middleware interface constructors. (#14523)
    This is a breaking API change for components that implement or use extensionmiddleware.

v1.52.0/v0.146.1

18 Feb 13:48
811b514

Choose a tag to compare

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

There are no changes in this release, see the following changelog for both v1.52.0 and v0.146.1: https://github.com/open-telemetry/opentelemetry-collector/releases/tag/v0.146.0

v0.146.1 was released to address the fact that a v1.52.0 release was needed for v0.146.0, but was not released with it.

v0.146.0

17 Feb 21:22
0341e72

Choose a tag to compare

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

End User Changelog

πŸ›‘ Breaking changes πŸ›‘

  • all: Increase minimum Go version to 1.25 (#14567)

🚩 Deprecations 🚩

  • pdata/pprofile: Declare removed aggregation elements as deprecated. (#14528)

πŸ’‘ Enhancements πŸ’‘

  • all: Add detailed failure attributes to exporter send_failed metrics at detailed telemetry level. (#13956)
    The otelcol_exporter_send_failed_{spans,metric_points,log_records} metrics now include
    failure attributes when telemetry level is Detailed: error.type (OpenTelemetry semantic convention
    describing the error class) and error.permanent (indicates if error is permanent/non-retryable).
    The error.type attribute captures gRPC status codes (e.g., "Unavailable", "ResourceExhausted"),
    standard Go context errors (e.g., "canceled", "deadline_exceeded"),
    and collector-specific errors (e.g., "shutdown").
    This enables better alerting and debugging by providing standardized error classification.

  • cmd/builder: Introduce new experimental init subcommand (#14530)
    The new init subcommand initializes a new custom collector

  • cmd/builder: Add "telemetry" field to allow configuring telemetry providers (#14575)
    Most users should not need to use this, this field should only be set if you
    intend to provide your own OpenTelemetry SDK.

  • cmd/mdatagen: Introduce additional metadata (the version since the deprecation started, and the deprecation reason) for deprecated metrics. (#14113)

  • cmd/mdatagen: Add optional relationships field to entity schema in metadata.yaml (#14284)

  • exporter/debug: Add output_paths configuration option to control output destination when use_internal_logger is false. (#10472)
    When use_internal_logger is set to false, the debug exporter now supports configuring the output destination via the output_paths option.
    This allows users to send debug exporter output to stdout, stderr, or a file path.
    The default value is ["stdout"] to maintain backward compatibility.

  • pkg/confmap: Add experimental ToStringMapRaw function to decode confmap.Conf into a string map without losing internal types (#14480)
    This method exposes the internal structure of a confmap.Conf which may change at any time without prior notice

🧰 Bug fixes 🧰

  • cmd/mdatagen: Reset aggDataPoints during metric init to avoid index out of range panic across emit cycles when reaggregation is enabled. (#14569)
  • cmd/mdatagen: Fix panic when mdatagen is run without arguments. (#14506)
  • pdata/pprofile: Fix off-by-one issue in dictionary lookups. (#14534)
  • pkg/config/confighttp: Fix high cardinality span name from request method from confighttp server internal telemetry (#14516)
    Follow spec to bound request method cardinality.
  • pkg/otelcol: Ignore component aliases in the otelcol components command (#14492)
  • pkg/otelcol: Order providers and converters in alphabetical order in the components subcommand. (#14476)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • cmd/mdatagen: Flatten the metric stability field (#14113)
    So we better match the weaver schema. Additional deprecation data can be set within the deprecated field.

🚩 Deprecations 🚩

  • pdata/pprofile: Declare removed aggregation elements as deprecated. (#14528)

πŸ’‘ Enhancements πŸ’‘

  • cmd/mdatagen: Add entity association requirement for metrics and events when entities are defined (#14284)
  • pkg/otelcol: Gate process signals behind build tags (#14542)
    Particularly for Wasm on JS, there are no invalid process signal references, which would cause build failures.

v1.51.0/v0.145.0

02 Feb 18:22
v0.145.0
f33c609

Choose a tag to compare

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

End User Changelog

πŸ’‘ Enhancements πŸ’‘

  • pkg/scraperhelper: ScraperID has been added to the logs for metrics, logs, and profiles (#14461)

🧰 Bug fixes 🧰

  • exporter/otlp_grpc: Fix the OTLP exporter balancer to use round_robin by default, as intended. (#14090)

  • pkg/config/configoptional: Fix Unmarshal methods not being called when config is wrapped inside Optional (#14500)
    This bug notably manifested in the fact that the sending_queue::batch::sizer config for exporters
    stopped defaulting to sending_queue::sizer, which sometimes caused the wrong units to be used
    when configuring sending_queue::batch::min_size and max_size.

    As part of the fix, xconfmap exposes a new xconfmap.WithForceUnmarshaler option, to be used in the Unmarshal methods
    of wrapper types like configoptional.Optional to make sure the Unmarshal method of the inner type is called.

    The default behavior remains that calling conf.Unmarshal on the confmap.Conf passed as argument to an Unmarshal
    method will skip any top-level Unmarshal methods to avoid infinite recursion in standard use cases.

  • pkg/confmap: Fix an issue where configs could fail to decode when using interpolated values in string fields. (#14413)
    For example, a header can be set via an environment variable to a string that is parseable as a number, e.g. 1234

  • pkg/service: Don't error on startup when process metrics are enabled on unsupported OSes (e.g. AIX) (#14307)

API Changelog

πŸ’‘ Enhancements πŸ’‘

  • pkg/config/configgrpc: add client info to context before server authentication (#12836)
  • pkg/xscraperhelper: Add AddProfilesScraper similar to scraperhelper.AddMetricsScraper (#14427)

🧰 Bug fixes 🧰

  • pkg/config/configoptional: Fix Unmarshal methods not being called when config is wrapped inside Optional (#14500)
    This bug notably manifested in the fact that the sending_queue::batch::sizer config for exporters
    stopped defaulting to sending_queue::sizer, which sometimes caused the wrong units to be used
    when configuring sending_queue::batch::min_size and max_size.

    As part of the fix, xconfmap exposes a new xconfmap.WithForceUnmarshaler option, to be used in the Unmarshal methods
    of wrapper types like configoptional.Optional to make sure the Unmarshal method of the inner type is called.

    The default behavior remains that calling conf.Unmarshal on the confmap.Conf passed as argument to an Unmarshal
    method will skip any top-level Unmarshal methods to avoid infinite recursion in standard use cases.

v1.50.0/v0.144.0

20 Jan 09:41
v0.144.0
97f66a9

Choose a tag to compare

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

End User Changelog

πŸ›‘ Breaking changes πŸ›‘

  • pkg/exporterhelper: Change verbosity level for otelcol_exporter_queue_batch_send_size metric to detailed. (#14278)
  • pkg/service: Remove deprecated telemetry.disableHighCardinalityMetrics feature gate. (#14373)
  • pkg/service: Remove deprecated service.noopTracerProvider feature gate. (#14374)

🚩 Deprecations 🚩

  • exporter/otlp_grpc: Rename otlp exporter to otlp_grpc exporter and add deprecated alias otlp. (#14403)
  • exporter/otlp_http: Rename otlphttp exporter to otlp_http exporter and add deprecated alias otlphttp. (#14396)

πŸ’‘ Enhancements πŸ’‘

  • cmd/builder: Avoid duplicate CLI error logging in generated collector binaries by relying on cobra's error handling. (#14317)

  • cmd/mdatagen: Add the ability to disable attributes at the metric level and re-aggregate data points based off of these new dimensions (#10726)

  • cmd/mdatagen: Add optional display_name and description fields to metadata.yaml for human-readable component names (#14114)
    The display_name field allows components to specify a human-readable name in metadata.yaml.
    When provided, this name is used as the title in generated README files.
    The description field allows components to include a brief description in generated README files.

  • cmd/mdatagen: Validate stability level for entities (#14425)

  • pkg/xexporterhelper: Reenable batching for profiles (#14313)

  • receiver/nop: add profiles signal support (#14253)

🧰 Bug fixes 🧰

  • pkg/exporterhelper: Fix reference count bug in partition batcher (#14444)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • pkg/config/confighttp: Replace ServerConfig.Endpoint with NetAddr confignet.AddrConfig, enabling more flexible transport configuration. (#14187, #8752)
    This change adds "transport" as a configuration option, allowing users to specify
    different transport protocols (e.g., "tcp", "unix").

🚩 Deprecations 🚩

  • pkg/scraperhelper: Deprecate the AddScraper method. (#14428)

πŸš€ New components πŸš€

  • pkg/xscraperhelper: Add xscraperhelper for the experimental OTel profiling signal. (#14235)

πŸ’‘ Enhancements πŸ’‘

  • all: Add support for deprecated component type aliases (#14208)
    To add a deprecated type alias to a component factory, use the WithDeprecatedTypeAlias option.

    return xexporter.NewFactory(
        metadata.Type,
        createDefaultConfig,
        xexporter.WithTraces(createTracesExporter, metadata.TracesStability),
        xexporter.WithDeprecatedTypeAlias("old_component_name"),
    )

    When the alias is used in configuration, a deprecation warning will be automatically logged, and the component will function normally using the original implementation.

  • cmd/mdatagen: Add the ability to disable attributes at the metric level and re-aggregate data points based off of these new dimensions (#10726)

  • extension/xextension: Add deprecated type alias support for extensions via xextension module (#14208)
    Extensions can now register deprecated type aliases using the experimental xextension.WithDeprecatedTypeAlias option.

    return xextension.NewFactory(
        metadata.Type,
        createDefaultConfig,
        createExtension,
        metadata.Stability,
        xextension.WithDeprecatedTypeAlias("old_extension_name"),
    )

    When the alias is used in configuration, a deprecation warning will be automatically logged, and the extension will function normally using the original implementation.

  • pkg/consumer/consumertest: Add ProfileCount() (#14251)

  • pkg/exporterhelper: Add support for profile samples metrics (#14423)

  • pkg/receiverhelper: Add support for profile samples metrics (#14226)

  • pkg/scraperhelper: Introduce AddMetricsScraper to be more explicit than AddScraper. (#14428)

  • receiver/otlp: Add metrics tracking the number of receiver, refused and failed profile samples (#14226)

🧰 Bug fixes 🧰

  • pkg/xconnector: Add component ID type validation to all xconnector Create methods (#14357)

v1.49.0/v0.143.0

05 Jan 20:27
v0.143.0
4ce4e37

Choose a tag to compare

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

End User Changelog

πŸ’‘ Enhancements πŸ’‘

  • all: Update semconv import to 1.38.0 (#14305)
  • exporter/nop: Add profiles support to nop exporter (#14331)
  • pkg/pdata: Optimize the size and pointer bytes for pdata structs (#14339)
  • pkg/pdata: Avoid using interfaces/oneof like style for optional fields (#14333)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • pkg/xprocessor: Use pointer receivers in xprocessor factory methods for consistency with other factories. (#14348)