Skip to content

⬆️ Update module go.opentelemetry.io/collector to v0.156.0#119

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/go.opentelemetry.io-collector-0.x
Open

⬆️ Update module go.opentelemetry.io/collector to v0.156.0#119
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/go.opentelemetry.io-collector-0.x

Conversation

@renovate

@renovate renovate Bot commented Jan 10, 2024

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
go.opentelemetry.io/collector v0.91.0v0.156.0 age adoption passing confidence

Release Notes

open-telemetry/opentelemetry-collector (go.opentelemetry.io/collector)

v0.156.0

Compare Source

💡 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.

v0.155.0

Compare Source

🛑 Breaking changes 🛑
  • pkg/confighttp: Remove stabilized gate confighttp.framedSnappy (#​15420)
  • pkg/configoptional: Remove stabilized gate configoptional.AddEnabledField. (#​15421)
  • pkg/confmap: Remove stabilized featuregate confmap.newExpandedValueSanitizer (#​15418)
  • pkg/exporterhelper: Remove stable gate exporter.PersistRequestContext. (#​15424)
  • pkg/otelcol: Remove stable gate otelcol.printInitialConfig (#​15425)
  • pkg/service: Remove stable featuregate telemetry.UseLocalHostAsDefaultMetricsAddress (#​15419)
  • pkg/xpdata: Remove stable gate pdata.enableRefCounting. (#​15426)
  • processor/memory_limiter: Rename deprecated memory limiter metrics to include the memory_limiter prefix (e.g. otelcol_processor_memory_limiter_*) to clarify they are specific to this processor. (#​11203)
🚀 New components 🚀
  • cmd/schemagen: Move the schemagen CLI from opentelemetry-collector-contrib to this repository as cmd/schemagen. (#​14543)
    The tool's source is identical to the upstream contrib version
    (github.com/open-telemetry/opentelemetry-collector-contrib/cmd/schemagen) except for the module path and
    the test fixtures' namespace, which now reflect the collector module
    (go.opentelemetry.io/collector/cmd/schemagen). A contrib-only integration test that pointed at three
    contrib components is removed; contrib's existing make generate-schemas + git-diff CI continues to
    exercise the FactoryMaps feature against real-world components.
💡 Enhancements 💡
  • cmd/mdatagen: Add support for versioned metrics (#​15309)
    Allows metadata to specify versioned metrics for migrating to new semantic conventions.
    There are two scenarios catered for when the metric name stays the same during migration.
    When a metric name stays the same but its type differs, just the latest metric is
    emitted with the new type.
    When a metric name stays the same but its attributes differ, the latest version
    is emitted with combined attributes during the migration period.

  • cmd/schemagen: Add overlayFile support to deep-merge hand-curated schema fragments into generated schemas. (#​14543)
    Components can declare an overlayFile in .schemagen.yaml pointing to a YAML file
    whose keys are recursively merged into the auto-generated schema after generation.
    This allows injecting descriptions, constraints, or additional properties that cannot
    be derived from Go types.
    Originally added to the contrib copy of cmd/schemagen in
    open-telemetry/opentelemetry-collector-contrib#48917 and brought over with the tool
    in this move.

  • cmd/schemagen: Add -p flag to specify a custom Go package pattern for the config struct. (#​14543)
    The new -p flag lets callers override the default . package pattern with an arbitrary
    Go package selector (e.g. a sub-package whose Config type schemagen should walk).
    Originally added to the contrib copy of cmd/schemagen in
    open-telemetry/opentelemetry-collector-contrib#48966 and brought over with the tool
    in this move.

🧰 Bug fixes 🧰
  • cmd/mdatagen: Fix an issue when the last feature gate is removed, stale files are left. (#​15423)
  • cmd/mdatagen: Fix known acronyms at the end of generated Go identifiers to be all-caps, same as in any other position (#​15438)
  • cmd/schemagen: Fix mode detection when using -p to target a package outside the current directory. (#​15453)
    A new -m component|package flag is available as a manual override when auto-detection is not possible.

v0.154.0

Compare Source

🛑 Breaking changes 🛑
  • cmd/builder: The --skip-get-modules flag will no longer regenerate your go.mod file. (#​15390)
    This is mostly a bug fix, as it led to adverse behaviour that was unintended in the described flow in the README.
    Now when you run --skip-get-modules, your go.mod file will truly be untouched by ocb as the info log claims.
💡 Enhancements 💡
  • pkg/config/configtls: Add include_insecure_cipher_suites to configtls to enable insecure cipher suites. Insecure cipher suites are disabled by default for security. (#​13829)
  • pkg/confighttp: Add ExposedHeaders field to CORSConfig to allow setting the Access-Control-Expose-Headers response header. (#​15119)
🧰 Bug fixes 🧰
  • cmd/mdatagen: Removes the extra line in the README.md between status and description (#​15306)
  • pkg/exporterhelper: Fix nil-pointer panic in sending_queue::batch Unmarshal when sending_queue::sizer is set and sending_queue::batch::enabled is false. (#​14687)
    When sending_queue::sizer was set and sending_queue::batch::enabled: false
    cleared the batch Optional to None, the sizer-inheritance branch in
    queuebatch.Config.Unmarshal dereferenced a nil Optional and crashed the
    collector at startup. The branch now also requires Batch.HasValue().

v0.153.0

Compare Source

🛑 Breaking changes 🛑
  • pkg/configoptional: Stabilize feature gate configoptional.AddEnabledField (#​15333)
  • pkg/confmap: Stabilize confmap.newExpandedValueSanitizer feature gate (#​15339)
  • pkg/exporterhelper: mark exporter.PersistRequestContext as stable (#​15330)
  • pkg/otelcol: Stabilize otelcol.printInitialConfig gate (#​15340)
  • pkg/pdata: Remove pdata.useCustomProtoEncoding feature gate (#​15332)
  • pkg/service: Stabilize telemetry.UseLocalHostAsDefaultMetricsAddress gate (#​15342)
  • pkg/xpdata: Stabilize pdata.enableRefCounting feature gate (#​15331)
🧰 Bug fixes 🧰
  • pkg/config/configgrpc: Fix memory corruption and fatal error in Snappy (#​15237, #​15320)

v0.152.1: v1.58.0/v0.152.1

Compare Source

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

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)

v0.152.0

Compare Source

💡 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)

v0.151.0

Compare Source

🛑 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)

v0.150.0

Compare Source

💡 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)

v0.149.0

Compare Source

🛑 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)

v0.148.0

Compare Source

❗ 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.

v0.147.0

Compare Source

💡 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)

v0.146.1

Compare Source

v0.146.0

Compare Source

🛑 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)

v0.145.0

Compare Source

💡 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)

v0.144.0

Compare Source

🛑 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)

v0.143.0

Compare Source

💡 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)

v0.142.0

Compare Source

💡 Enhancements 💡
  • exporter/debug: Add logging of dropped attributes, events, and links counts in detailed verbosity (#​14202)

  • extension/memory_limiter: The memorylimiter extension can be used as an HTTP/GRPC middleware. (#​14081)

  • pkg/config/configgrpc: Statically validate gRPC endpoint (#​10451)
    This validation was already done in the OTLP exporter. It will now be applied to any gRPC client.

  • pkg/service: Add support to disabling adding resource attributes as zap fields in internal logging (#​13869)
    Note that this does not affect logs exported through OTLP.

v0.141.0

Compare Source

🛑 Breaking changes 🛑
  • pkg/config/confighttp: Use configoptional.Optional for confighttp.ClientConfig.Cookies field (#​14021)
💡 Enhancements 💡
  • pkg/config/confighttp: Setting compression_algorithms to an empty list now disables automatic decompression, ignoring Content-Encoding (#​14131)
  • pkg/service: Update semantic conventions from internal telemetry to v1.37.0 (#​14232)
  • pkg/xscraper: Implement xscraper for Profiles. (#​13915)
🧰 Bug fixes 🧰
  • pkg/config/configoptional: Ensure that configoptional.None values resulting from unmarshaling are equivalent to configoptional.Optional zero value. (#​14218)

v0.140.0

Compare Source

💡 Enhancements 💡
  • cmd/mdatagen: metadata.yaml now supports an optional entities section to organize resource attributes into logical entities with identity and description attributes (#​14051)
    When entities are defined, mdatagen generates AssociateWith{EntityType}() methods on ResourceBuilder
    that associate resources with entity types using the entity refs API. The entities section is backward
    compatible - existing metadata.yaml files without entities continue to work as before.

  • cmd/mdatagen: Add semconv reference for metrics (#​13920)

  • connector/forward: Add support for Profiles to Profiles (#​14092)

  • exporter/debug: Disable sending queue by default (#​14138)
    The recently added sending queue configuration in Debug exporter was enabled by default and had a problematic default size of 1.
    This change disables the sending queue by default.
    Users can enable and configure the sending queue if needed.

  • pkg/config/configoptional: Mark configoptional.AddEnabledField as beta (#​14021)

  • pkg/otelcol: This feature has been improved and tested; secure-by-default redacts configopaque values (#​12369)

🧰 Bug fixes 🧰
  • all: Ensure service service.instance.id is the same for all the signals when it is autogenerated. (#​14140)

v0.139.0

Compare Source

🛑 Breaking changes 🛑
  • cmd/mdatagen: Make stability.level a required field for metrics (#​14070)

  • cmd/mdatagen: Replace optional field with requirement_level field for attributes in metadata schema (#​13913)
    The optional boolean field for attributes has been replaced with a requirement_level field that accepts enum values: required, conditionally_required, recommended, or opt_in.

    • required: attribute is always included and cannot be excluded
    • conditionally_required: attribute is included by default when certain conditions are met (replaces optional: true)
    • recommended: attribute is included by default but can be disabled via configuration (replaces optional: false)
    • opt_in: attribute is not included unless exp

Note

PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • "before 2am"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added dependencies Upgrade or downgrade of project dependencies. go no-stale This issue or PR is exempted from the stable bot. labels Jan 10, 2024
@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Passed Quality Gate passed

Kudos, no new issues were introduced!

0 New issues
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (94cf978) 73.39% compared to head (dc38103) 73.39%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #119   +/-   ##
=======================================
  Coverage   73.39%   73.39%           
=======================================
  Files           2        2           
  Lines         109      109           
=======================================
  Hits           80       80           
  Misses         20       20           
  Partials        9        9           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from dc38103 to be9dafb Compare January 24, 2024 06:47
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.92.0 ⬆️ Update module go.opentelemetry.io/collector to v0.93.0 Jan 24, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch 6 times, most recently from 1d47f98 to e2113bc Compare January 31, 2024 04:28
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch 4 times, most recently from 8f5edea to 4b7078d Compare February 7, 2024 01:02
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.93.0 ⬆️ Update module go.opentelemetry.io/collector to v0.94.0 Feb 7, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch 2 times, most recently from cd5b205 to e151877 Compare February 8, 2024 00:29
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.94.0 ⬆️ Update module go.opentelemetry.io/collector to v0.94.1 Feb 8, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch 3 times, most recently from 647f157 to 9ccfd9c Compare February 12, 2024 04:43
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch 4 times, most recently from f8ae82c to 4dd5a5a Compare February 20, 2024 18:37
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.94.1 ⬆️ Update module go.opentelemetry.io/collector to v0.95.0 Feb 20, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from 4dd5a5a to 286a059 Compare February 26, 2024 04:05
@renovate

renovate Bot commented May 21, 2024

Copy link
Copy Markdown
Contributor Author

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: go.sum
Command failed: go get -t ./...
go: downloading go.opentelemetry.io/collector v0.156.0
go: downloading github.com/stretchr/testify v1.11.1
go: downloading go.opentelemetry.io/otel/metric v1.43.0
go: downloading go.opentelemetry.io/otel v1.43.0
go: downloading go.opentelemetry.io/otel/trace v1.43.0
go: downloading google.golang.org/grpc v1.82.0
go: downloading golang.org/x/net v0.53.0
go: downloading google.golang.org/genproto/googleapis/rpc v0.0.0-20260414002931-afd174a4e478
go: downloading github.com/cespare/xxhash/v2 v2.3.0
go: downloading google.golang.org/protobuf v1.36.11
go: downloading golang.org/x/sys v0.43.0
go: downloading golang.org/x/text v0.36.0
go: downloading go.opentelemetry.io v0.1.0
go: github.com/joostlek/opentelemetry-stacktrace-processor tested by
	github.com/joostlek/opentelemetry-stacktrace-processor.test imports
	go.opentelemetry.io/collector/processor/processortest imports
	go.opentelemetry.io/collector/internal/testdata: cannot find module providing package go.opentelemetry.io/collector/internal/testdata

@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from 26a90d9 to 9709467 Compare June 4, 2024 11:31
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.101.0 ⬆️ Update module go.opentelemetry.io/collector to v0.102.0 Jun 4, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from 9709467 to af470e1 Compare June 5, 2024 17:39
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.102.0 ⬆️ Update module go.opentelemetry.io/collector to v0.102.1 Jun 5, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from af470e1 to 7400e02 Compare June 18, 2024 16:11
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.102.1 ⬆️ Update module go.opentelemetry.io/collector to v0.103.0 Jun 18, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from 7400e02 to 49d0a9d Compare July 1, 2024 22:32
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.103.0 ⬆️ Update module go.opentelemetry.io/collector to v0.104.0 Jul 1, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from 49d0a9d to 6dfbf21 Compare July 16, 2024 18:28
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.104.0 ⬆️ Update module go.opentelemetry.io/collector to v0.105.0 Jul 16, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from 6dfbf21 to c6ea628 Compare July 29, 2024 21:34
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.105.0 ⬆️ Update module go.opentelemetry.io/collector to v0.106.0 Jul 29, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from c6ea628 to 005c25c Compare July 30, 2024 19:31
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.106.0 ⬆️ Update module go.opentelemetry.io/collector to v0.106.1 Jul 30, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from 005c25c to 541a17d Compare August 13, 2024 03:16
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.106.1 ⬆️ Update module go.opentelemetry.io/collector to v0.107.0 Aug 13, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from 541a17d to b5b6b00 Compare August 27, 2024 19:35
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.107.0 ⬆️ Update module go.opentelemetry.io/collector to v0.108.1 Aug 27, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from b5b6b00 to b737cd8 Compare September 10, 2024 02:10
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.108.1 ⬆️ Update module go.opentelemetry.io/collector to v0.109.0 Sep 10, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from b737cd8 to 300baa6 Compare September 23, 2024 21:27
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.109.0 ⬆️ Update module go.opentelemetry.io/collector to v0.110.0 Sep 23, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from 300baa6 to 2888ee0 Compare October 4, 2024 10:55
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.110.0 ⬆️ Update module go.opentelemetry.io/collector to v0.111.0 Oct 4, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from 2888ee0 to fa35955 Compare October 22, 2024 19:09
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.111.0 ⬆️ Update module go.opentelemetry.io/collector to v0.112.0 Oct 22, 2024
@renovate renovate Bot force-pushed the renovate/go.opentelemetry.io-collector-0.x branch from fa35955 to 107146b Compare November 5, 2024 22:36
@renovate renovate Bot changed the title ⬆️ Update module go.opentelemetry.io/collector to v0.112.0 ⬆️ Update module go.opentelemetry.io/collector to v0.113.0 Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Upgrade or downgrade of project dependencies. go no-stale This issue or PR is exempted from the stable bot.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant