Chore/filter goleak test - #1
Open
Goutham-Annem wants to merge 88 commits into
Open
Conversation
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [CodSpeedHQ/action](https://redirect.github.com/CodSpeedHQ/action) | action | patch | `v4.17.0` → `v4.17.5` | --- > [!WARNING] > Some dependencies could not be looked up. Check the [Dependency Dashboard](..open-telemetry/issues/8903) for more information. --- ### Release Notes <details> <summary>CodSpeedHQ/action (CodSpeedHQ/action)</summary> ### [`v4.17.5`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v4.17.5) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.17.0...v4.17.5) #### Release Notes This release bundles all runner changes from `4.17.1` through `4.17.5`. ##### <!-- 0 -->🚀 Features - Add optional `mode` arg to target setup by [@&open-telemetry#8203;fargito](https://redirect.github.com/fargito) in [#&open-telemetry#8203;397](https://redirect.github.com/CodSpeedHQ/runner/pull/397) - Restore DYLD\_INSERT\_LIBRARIES from SAMPLY\_ alias by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) - Bump valgrind-codspeed to 3.26.0-0codspeed3 by [@&open-telemetry#8203;adriencaccia](https://redirect.github.com/adriencaccia) ##### <!-- 1 -->🐛 Bug Fixes - Purge inherited mappings on execve to fix unknown symbols ([#&open-telemetry#8203;392](https://redirect.github.com/CodSpeedHQ/action/issues/392)) by [@&open-telemetry#8203;GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#&open-telemetry#8203;392](https://redirect.github.com/CodSpeedHQ/runner/pull/392) - Use %p in log file path to avoid multi-process overwrite by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [#&open-telemetry#8203;381](https://redirect.github.com/CodSpeedHQ/runner/pull/381) - Compare codspeed iteration of installed valgrind by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 10 -->💼 Other - Enable set -u to match go.sh by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [#&open-telemetry#8203;389](https://redirect.github.com/CodSpeedHQ/runner/pull/389) ##### <!-- 2 -->🏗️ Refactor - Parse codspeed iteration from version string by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 7 -->⚙️ Internals - Bump samply by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) - Bump samply to fix sigkill by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [#&open-telemetry#8203;386](https://redirect.github.com/CodSpeedHQ/runner/pull/386) - Log detected valgrind version by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [#&open-telemetry#8203;390](https://redirect.github.com/CodSpeedHQ/runner/pull/390) - Bump samply-codspeed to disable jit classification and add fp-anchoring to unwinding ([#&open-telemetry#8203;382](https://redirect.github.com/CodSpeedHQ/action/issues/382)) by [@&open-telemetry#8203;GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#&open-telemetry#8203;382](https://redirect.github.com/CodSpeedHQ/runner/pull/382) #### Install codspeed-runner 4.17.5 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CodSpeedHQ/codspeed/releases/download/v4.17.5/codspeed-runner-installer.sh | sh ``` #### Download codspeed-runner 4.17.5 | File | Platform | Checksum | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | [codspeed-runner-aarch64-apple-darwin.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.5/codspeed-runner-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.5/codspeed-runner-aarch64-apple-darwin.tar.gz.sha256) | | [codspeed-runner-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.5/codspeed-runner-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.5/codspeed-runner-aarch64-unknown-linux-musl.tar.gz.sha256) | | [codspeed-runner-x86\_64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.5/codspeed-runner-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.5/codspeed-runner-x86_64-unknown-linux-musl.tar.gz.sha256) | **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> **Full Changelog**: <CodSpeedHQ/action@v4.17.0...v4.17.5> </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMTkuMCIsInVwZGF0ZWRJblZlciI6IjQzLjIxOS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
…gen package targeting (open-telemetry#15453) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This change fixes mode detection for `-p` by resolving the target package's on-disk source directory via a lightweight `packages.Load` call before reading its `metadata.yaml`. This works for any package reachable from the local module graph, including cross-repo dependencies present in the module cache. When the package is not in the local module graph, detection falls back to the existing default; a new `-m component|package` flag is provided as a manual override for that case. <!--Describe what testing was performed and which tests were added.--> #### Testing Changes covered with unit tests. <!--Describe the documentation added.--> #### Documentation Updated `README.md` . <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…dling (open-telemetry#15452) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description PR provides fix for pattern propagation in schema resolver (when `-r` flag set) and improves overall error handling for better debugging. <!--Describe what testing was performed and which tests were added.--> #### Testing Unit tests updated. #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue.
Ex. Adding a feature - Explain what this achieves.-->
#### Description
This allows metadata to specify versioned metrics, which will allow
migration to the latest semantic-conventions for collector components.
For example, if a metric name remains the same but its type or
attributes change, we can specify the latest versioned metric with '@'.
For example
```yaml
# Metric that keeps the same visible name but changes type (gauge -> sum)
system.cpu.utilization:
enabled: true
description: CPU utilization as a ratio.
stability: beta
unit: "1"
gauge:
value_type: double
migration:
to: system.cpu.utilization@v1
through_gates:
disable_old: receiver.hostmetrics.DontEmitV0SystemConventions
enable_new: receiver.hostmetrics.EmitV1SystemConventions
attributes: [cpu, state]
system.cpu.utilization@v1:
# Emit under the stable user-facing name
enabled: true
description: CPU utilization as a monotonic cumulative sum.
stability: beta
unit: "1"
sum:
value_type: double
aggregation_temporality: cumulative
monotonic: true
attributes: [cpu.logical_number, state]
```
For same-name metrics, dual emission of both legacy and latest is not
allowed, see RFC
[here](https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/rfcs/semconv-feature-gates.md#handling-conflicts-during-double-publishing).
There are two scenarios:
- If the type differs (e.g., Gauge to Sum), only the latest metric is
emitted with the new type.
- If the attributes differ, only the latest metric is emitted, but with
attributes from both legacy and latest versions.
- For different-name metrics (e.g., linux.memory.available →
system.memory.linux.available), both can be emitted during migration.
## Output
### Legacy and Latest Metric have the same name but its type and
attributes differ
#### metadata schema
```yaml
type: cpu
status:
class: scraper
stability:
beta: [metrics]
distributions: [core, contrib, k8s]
codeowners:
active: [dmitryax, braydonk, rogercoll]
reaggregation_enabled: true
sem_conv_version: 1.9.0
feature_gates:
- id: receiver.hostmetrics.DontEmitV0SystemConventions
description: When enabled, semconv legacy attributes are disabled.
stage: alpha
from_version: v0.145.0
reference_url: open-telemetry/opentelemetry-collector-contrib#45592
skip_strict_validation: true
- id: receiver.hostmetrics.EmitV1SystemConventions
description: When enabled, semconv stable attributes are enabled.
stage: alpha
from_version: v0.145.0
reference_url: open-telemetry/opentelemetry-collector-contrib#45592
skip_strict_validation: true
attributes:
cpu:
description: Logical CPU number starting at 0.
type: string
requirement_level: recommended
cpu.logical_number:
description: The logical CPU number [0, n-1].
type: int
state:
description: Breakdown of CPU usage by type.
type: string
requirement_level: recommended
enum: [idle, interrupt, nice, softirq, steal, system, user, wait]
metrics:
system.cpu.frequency:
enabled: false
description: Current frequency of the CPU core in Hz.
unit: "Hz"
stability: development
gauge:
value_type: double
attributes: [cpu]
migration:
to: system.cpu.frequency@v1
through_gates:
disable_old: receiver.hostmetrics.DontEmitV0SystemConventions
enable_new: receiver.hostmetrics.EmitV1SystemConventions
warnings:
if_enabled_not_set: This metric will be disabled by default in a future release. Use system.cpu.frequency@v1 instead.
system.cpu.frequency@v1:
enabled: false
description: Current frequency of the CPU core in Hz. (V1)
unit: "Hz"
stability: development
gauge:
value_type: double
attributes: [cpu.logical_number]
# Legacy metric - deprecated but still enabled by default for backward compatibility
system.cpu.time:
enabled: true
description: Total seconds each logical CPU spent on each mode.
unit: s
stability: development
sum:
value_type: double
monotonic: true
aggregation_temporality: cumulative
attributes: [cpu, state]
migration:
to: system.cpu.time@v1
through_gates:
disable_old: receiver.hostmetrics.DontEmitV0SystemConventions
enable_new: receiver.hostmetrics.EmitV1SystemConventions
warnings:
if_enabled_not_set: This metric will be disabled by default in a future release. Use system.cpu.time@v1 instead.
# New semconv metric - disabled by default, users opt-in
system.cpu.time@v1:
enabled: true
description: CPU time in milliseconds (new semantic conventions)
stability: beta
unit: s
gauge:
value_type: double
attributes: [cpu.logical_number, state]
```
#### Output
Log warning
```bash
warn metadata/generated_metrics.go:783 [WARNING] Legacy metric `system.cpu.time` disabled: same emitted name as `system.cpu.time@v1` with different type; only latest will be emitted {"resource": {"service.instance.id": "af346afa-9484-4139-b03c-6358aa7cf73b", "service.name": "otelcontribcol", "service.version": "0.152.0-dev"}, "otelcol.component.id": "hostmetrics", "otelcol.component.kind": "receiver", "otelcol.signal": "metrics", "scraper": "cpu"}
warn metadata/generated_metrics.go:789 [WARNING] Legacy metric `system.cpu.time` disabled: same emitted name as `system.cpu.time@v1` with different attributes; only latest will be emitted with combined attributes {"resource": {"service.instance.id": "d98ac78b-9da6-44c7-98f4-a3b0c6eb18e0", "service.name": "otelcontribcol", "service.version": "0.152.0-dev"}, "otelcol.component.id": "hostmetrics", "otelcol.component.kind": "receiver", "otelcol.signal": "metrics", "scraper": "cpu", "legacy_attributes": ["cpu", "state"], "latest_attributes": ["cpu.logical_number", "state"]}
```
Metrics and attributes outpu
```bash
Metric #1
Descriptor:
-> Name: system.cpu.time
-> Description: CPU time in milliseconds (new semantic conventions)
-> Unit: s
-> DataType: Gauge
NumberDataPoints #0
Data point attributes:
-> cpu.logical_number: Int(0)
-> state: Str(user)
-> cpu: Str(cpu0)
StartTimestamp: 2026-05-29 08:24:40 +0000 UTC
Timestamp: 2026-06-03 15:40:48.535052237 +0000 UTC
Value: 6815.740000
NumberDataPoints #1
Data point attributes:
-> cpu.logical_number: Int(0)
-> state: Str(system)
-> cpu: Str(cpu0)
StartTimestamp: 2026-05-29 08:24:40 +0000 UTC
Timestamp: 2026-06-03 15:40:48.535052237 +0000 UTC
Value: 2271.130000
```
<!-- Issue number if applicable -->
#### Link to tracking issue
This work is linked to an issue in collector-contrib:
open-telemetry/opentelemetry-collector-contrib#45592
<!--Describe what testing was performed and which tests were added.-->
#### Testing
- Added unit tests for migration validation (`TestValidateMigrations`)
- Added generated tests for versioned metrics (`TestVersionedMetrics`)
- Created samplemigrationscraper to demonstrate versioned metric
scenarios
<!--Describe the documentation added.-->
#### Documentation
- Created samplemigrationscraper metadata.yaml with examples
- Updated metadata-schema.yaml with migration information
<!--Please delete paragraphs that you did not use before submitting.-->
A bug in mdatagen was causing generated files to be left behind when the last feature gate in a metadata.yaml file was removed. --------- Signed-off-by: Alex Boten <223565+codeboten@users.noreply.github.com>
) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [github.com/cenkalti/backoff/v5](https://redirect.github.com/cenkalti/backoff) | `v5.0.3` → `v6.0.0` |  |  | :warning: MAJOR VERSION UPDATE :warning: - please manually update this package --- ### Release Notes <details> <summary>cenkalti/backoff (github.com/cenkalti/backoff/v5)</summary> ### [`v6.0.0`](https://redirect.github.com/cenkalti/backoff/compare/v5.0.3...v6.0.0) [Compare Source](https://redirect.github.com/cenkalti/backoff/compare/v5.0.3...v6.0.0) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMTkuMCIsInVwZGF0ZWRJblZlciI6IjQzLjIxOS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmN5LW1ham9yLXVwZGF0ZSJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Yang Song <yang.song@datadoghq.com>
…ing (open-telemetry#15445) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description The recommended processor ordering list in `processor/README.md` had the correct order but no explanation of why each processor belongs in its position. Added a brief inline rationale to each numbered item so readers understand the reasoning: `memory_limiter` first to shed load early, filters before enrichment to avoid processing data that will be dropped, context-dependent processors before batch, and batch last so you don't batch data you'll later discard. <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#15075 <!--Describe what testing was performed and which tests were added.--> #### Testing Doc changes <!--Describe the documentation added.--> #### Documentation Updated `processor/README.md` — the "Recommended Processors" numbered list now includes inline reasoning for each item. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. --------- Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
…limiter prefix (open-telemetry#15167) #### Description Renames deprecated memory limiter metrics to include the `memory_limiter` prefix for improved clarity and consistency. #### Link to tracking issue Fixes open-telemetry#11203 #### Testing - Ran `go generate ./...` - Ran `go test ./... -count=1` #### Documentation - Updated metric names in `documentation.md` --------- Co-authored-by: bradyawn <38081482+bradyawn@users.noreply.github.com> Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Fixed the incorrect ToVersion comment to reflect that it returns the version information when the gate will be removed. <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#11341 #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.--> Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
…en-telemetry#15465) Two doc comments in config/configoptional/optional.go spelled "dereferenceable" as "derefenceable". Comment-only fix, no behavior change (Skip Changelog). Signed-off-by: s3onghyun <s3onghyun.hong@gmail.com>
Add an opt-in configuration snapshot path for extensions that need more than the Collector's effective configuration. The new API exposes a single `ConfigSnapshot` abstraction instead of separate watcher APIs for each representation. Proposed solution for open-telemetry#15432. Related contrib use case: open-telemetry/opentelemetry-collector-contrib#44341 ### New public API surface - `confmap.(*Resolver).UnexpandedConf() *Conf`: returns the merged configuration captured by the most recent `Resolve` call before provider/env-var references were expanded. Returns nil if `Resolve` has not been called. - `extension/extensioncapabilities.ConfigSnapshot`: provides access to config representations. It currently exposes `Effective()` and `Unexpanded()`, and can grow with additional representations later without adding separate watcher interfaces. - `extension/extensioncapabilities.NewConfigSnapshot(effective, unexpanded *confmap.Conf) ConfigSnapshot`: creates a snapshot and returns owned `confmap.Conf` copies from its accessors. - `extension/extensioncapabilities.ConfigSnapshotWatcher`: optional extension interface notified through `NotifyConfigSnapshot(ctx, ConfigSnapshot)`. - `service.Settings.ConfigSnapshot`: optional field passed to config snapshot watchers during `Service.Start`. - `service/extensions.(*Extensions).NotifyConfigSnapshot(ctx, ConfigSnapshot) error`: invokes `NotifyConfigSnapshot` on registered extensions and falls back to deprecated `ConfigWatcher` for compatibility. ### Compatibility `extensioncapabilities.ConfigWatcher`, `service.Settings.CollectorConf`, and `service/extensions.(*Extensions).NotifyConfig` are deprecated, but existing effective-config watchers keep working. `otelcol.Collector` still sets `CollectorConf` when constructing `service.Settings`. The unexpanded config is redacted by mirroring the effective redacted config: `configopaque.String` values are redacted unless the entire original leaf is a provider reference such as `${env:TOKEN}`. #### Authorship - [x] I, a human, wrote this pull request description myself. --------- Co-authored-by: Pablo Baeyens <pbaeyens31+github@gmail.com> Co-authored-by: Evan Bradley <11745660+evan-bradley@users.noreply.github.com>
…ith ref-site nodes (open-telemetry#15462) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR fixes following problem: when `exported_configs` defines both a parent struct and a child struct, and the parent references the child via `$ref`, `mdatagen` generated the wrong struct-level validator name for the child type. <!--Describe what testing was performed and which tests were added.--> #### Testing Added unit test. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…ed (open-telemetry#15440) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Use `metadata.yaml` schema to generate go code and json schema for middleware config.
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [golang.org/x/net](https://pkg.go.dev/golang.org/x/net) | [`v0.55.0` → `v0.56.0`](https://cs.opensource.google/go/x/net/+/refs/tags/v0.55.0...refs/tags/v0.56.0) |  |  | | [golang.org/x/tools](https://pkg.go.dev/golang.org/x/tools) | [`v0.45.0` → `v0.46.0`](https://cs.opensource.google/go/x/tools/+/refs/tags/v0.45.0...refs/tags/v0.46.0) |  |  | --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMTkuMCIsInVwZGF0ZWRJblZlciI6IjQzLjIxOS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> Co-authored-by: Yang Song <songy23@users.noreply.github.com> Co-authored-by: Yang Song <yang.song@datadoghq.com> Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
Removes the mdatagen `reaggregation_enabled` opt-out and the legacy template branch that generated shared metric config
The following commands were run to prepare this release: - make chlog-update VERSION=v1.61.0/v0.155.0 - make prepare-release PREVIOUS_VERSION=1[.]60[.]0 RELEASE_CANDIDATE=1.61.0 MODSET=stable - make prepare-release PREVIOUS_VERSION=0[.]154[.]0 RELEASE_CANDIDATE=0.155.0 MODSET=beta --------- Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com>
…emetry#15488) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Primitive exported config schemas now generate distinct named Go types, including custom underlying primitive types such as `type PortNumber int32`. Fields referencing those exported primitive configs keep the named type, while defaults and validation remain generated inline on the referencing field. Also fixes resolver handling so inline validation overrides on `$ref` fields are preserved without overwriting the original `$defs` type declaration. <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#15487 <!--Describe what testing was performed and which tests were added.--> #### Testing 1. Added `samplepkg` example 2. Unit tests coverage <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…#15483) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [github.com/prometheus/common](https://redirect.github.com/prometheus/common) | `v0.68.1` → `v0.69.0` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the [Dependency Dashboard](..open-telemetry/issues/8903) for more information. --- ### Release Notes <details> <summary>prometheus/common (github.com/prometheus/common)</summary> ### [`v0.69.0`](https://redirect.github.com/prometheus/common/blob/HEAD/CHANGELOG.md#v0690--2026-06-17) [Compare Source](https://redirect.github.com/prometheus/common/compare/v0.68.1...v0.69.0) ##### Security / behavior changes - **config: credentials are no longer forwarded across cross-host redirects.** When `FollowRedirects` is enabled, the HTTP client now strips `Authorization`, `Cookie`, `Proxy-Authorization` and other sensitive headers, and skips basic-auth, bearer-token and OAuth2 credentials, when a redirect points to a different host. This aligns with Go's `net/http` behavior. Callers that relied on credentials being sent to a redirect target on another host will need to target that host directly. [#&open-telemetry#8203;901](https://redirect.github.com/prometheus/common/issues/901) [#&open-telemetry#8203;920](https://redirect.github.com/prometheus/common/issues/920) [#&open-telemetry#8203;921](https://redirect.github.com/prometheus/common/issues/921) - config: `LoadHTTPConfigFile` now resolves relative file paths (e.g. `*_file` credentials, `http_headers` files) against the config file's own directory instead of its parent directory. Configs that worked around the old behavior by prefixing paths with the config's directory name must drop that prefix. [#&open-telemetry#8203;925](https://redirect.github.com/prometheus/common/issues/925) ##### Bugfixes - expfmt: fix nil pointer panic when parsing empty braces `{}`. [#&open-telemetry#8203;922](https://redirect.github.com/prometheus/common/issues/922) - model: fix `Time.UnmarshalJSON` for larger negative numbers. [#&open-telemetry#8203;918](https://redirect.github.com/prometheus/common/issues/918) ##### Performance - model: reduce allocations in `Time.UnmarshalJSON`. [#&open-telemetry#8203;918](https://redirect.github.com/prometheus/common/issues/918) ##### Internal - Synchronize common files from prometheus/prometheus. [#&open-telemetry#8203;917](https://redirect.github.com/prometheus/common/issues/917) - Modernize Go. [#&open-telemetry#8203;919](https://redirect.github.com/prometheus/common/issues/919) **Full Changelog**: <prometheus/common@v0.68.1...v0.69.0> </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzUuMCIsInVwZGF0ZWRJblZlciI6IjQzLjIzNS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> Co-authored-by: Yang Song <songy23@users.noreply.github.com> Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
…y#15481) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [github.com/cenkalti/backoff/v6](https://redirect.github.com/cenkalti/backoff) | `v6.0.0` → `v6.0.1` |  |  | --- ### Release Notes <details> <summary>cenkalti/backoff (github.com/cenkalti/backoff/v6)</summary> ### [`v6.0.1`](https://redirect.github.com/cenkalti/backoff/compare/v6.0.0...v6.0.1) [Compare Source](https://redirect.github.com/cenkalti/backoff/compare/v6.0.0...v6.0.1) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzUuMCIsInVwZGF0ZWRJblZlciI6IjQzLjIzNS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> Co-authored-by: Yang Song <songy23@users.noreply.github.com> Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [actions/cache](https://redirect.github.com/actions/cache) | action | major | `v5.0.5` → `v6.0.0` | | [actions/checkout](https://redirect.github.com/actions/checkout) | action | major | `v6.0.3` → `v7.0.0` | | [actions/checkout](https://redirect.github.com/actions/checkout) | action | major | `v6` → `v7` | --- ### Release Notes <details> <summary>actions/cache (actions/cache)</summary> ### [`v6.0.0`](https://redirect.github.com/actions/cache/releases/tag/v6.0.0) [Compare Source](https://redirect.github.com/actions/cache/compare/v6.0.0...v6.0.0) #### What's Changed - Update packages, migrate to ESM by [@&open-telemetry#8203;Samirat](https://redirect.github.com/Samirat) in [#&open-telemetry#8203;1760](https://redirect.github.com/actions/cache/pull/1760) **Full Changelog**: <actions/cache@v5...v6.0.0> ### [`v6`](https://redirect.github.com/actions/cache/compare/v5.0.5...v6.0.0) [Compare Source](https://redirect.github.com/actions/cache/compare/v5.0.5...v6.0.0) </details> <details> <summary>actions/checkout (actions/checkout)</summary> ### [`v7.0.0`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v700) [Compare Source](https://redirect.github.com/actions/checkout/compare/v7.0.0...v7.0.0) - Block checking out fork PR for pull\_request\_target and workflow\_run by [@&open-telemetry#8203;aiqiaoy](https://redirect.github.com/aiqiaoy) in [#&open-telemetry#8203;2454](https://redirect.github.com/actions/checkout/pull/2454) - Bump actions/publish-immutable-action from 0.0.3 to 0.0.4 in the minor-actions-dependencies group across 1 directory by [@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in [#&open-telemetry#8203;2458](https://redirect.github.com/actions/checkout/pull/2458) - Bump flatted from 3.3.1 to 3.4.2 by [@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in [#&open-telemetry#8203;2460](https://redirect.github.com/actions/checkout/pull/2460) - Bump js-yaml from 4.1.0 to 4.2.0 by [@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in [#&open-telemetry#8203;2461](https://redirect.github.com/actions/checkout/pull/2461) - Bump [@&open-telemetry#8203;actions/core](https://redirect.github.com/actions/core) and [@&open-telemetry#8203;actions/tool-cache](https://redirect.github.com/actions/tool-cache) and Remove uuid by [@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in [#&open-telemetry#8203;2459](https://redirect.github.com/actions/checkout/pull/2459) - upgrade module to esm and update dependencies by [@&open-telemetry#8203;aiqiaoy](https://redirect.github.com/aiqiaoy) in [#&open-telemetry#8203;2463](https://redirect.github.com/actions/checkout/pull/2463) - Bump the minor-npm-dependencies group across 1 directory with 3 updates by [@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in [#&open-telemetry#8203;2462](https://redirect.github.com/actions/checkout/pull/2462) ### [`v7`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v700) [Compare Source](https://redirect.github.com/actions/checkout/compare/v6.0.3...v7.0.0) - Block checking out fork PR for pull\_request\_target and workflow\_run by [@&open-telemetry#8203;aiqiaoy](https://redirect.github.com/aiqiaoy) in [#&open-telemetry#8203;2454](https://redirect.github.com/actions/checkout/pull/2454) - Bump actions/publish-immutable-action from 0.0.3 to 0.0.4 in the minor-actions-dependencies group across 1 directory by [@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in [#&open-telemetry#8203;2458](https://redirect.github.com/actions/checkout/pull/2458) - Bump flatted from 3.3.1 to 3.4.2 by [@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in [#&open-telemetry#8203;2460](https://redirect.github.com/actions/checkout/pull/2460) - Bump js-yaml from 4.1.0 to 4.2.0 by [@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in [#&open-telemetry#8203;2461](https://redirect.github.com/actions/checkout/pull/2461) - Bump [@&open-telemetry#8203;actions/core](https://redirect.github.com/actions/core) and [@&open-telemetry#8203;actions/tool-cache](https://redirect.github.com/actions/tool-cache) and Remove uuid by [@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in [#&open-telemetry#8203;2459](https://redirect.github.com/actions/checkout/pull/2459) - upgrade module to esm and update dependencies by [@&open-telemetry#8203;aiqiaoy](https://redirect.github.com/aiqiaoy) in [#&open-telemetry#8203;2463](https://redirect.github.com/actions/checkout/pull/2463) - Bump the minor-npm-dependencies group across 1 directory with 3 updates by [@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in [#&open-telemetry#8203;2462](https://redirect.github.com/actions/checkout/pull/2462) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzUuMCIsInVwZGF0ZWRJblZlciI6IjQzLjIzNS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [golang.org/x/vuln](https://pkg.go.dev/golang.org/x/vuln) | [`v1.3.0` → `v1.4.0`](https://cs.opensource.google/go/x/vuln/+/refs/tags/v1.3.0...refs/tags/v1.4.0) |  |  | --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzUuMCIsInVwZGF0ZWRJblZlciI6IjQzLjIzNS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Yang Song <songy23@users.noreply.github.com> Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [CodSpeedHQ/action](https://redirect.github.com/CodSpeedHQ/action) | action | patch | `v4.17.5` → `v4.17.6` | | [zizmorcore/zizmor-action](https://redirect.github.com/zizmorcore/zizmor-action) | action | patch | `v0.5.6` → `v0.5.7` | --- > [!WARNING] > Some dependencies could not be looked up. Check the [Dependency Dashboard](..open-telemetry/issues/8903) for more information. --- ### Release Notes <details> <summary>CodSpeedHQ/action (CodSpeedHQ/action)</summary> ### [`v4.17.6`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v4.17.6) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.17.5...v4.17.6) #### Release Notes ##### <!-- 0 -->🚀 Features - feat: skip hash check error when installing pre-release by [@&open-telemetry#8203;GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#&open-telemetry#8203;215](https://redirect.github.com/CodSpeedHQ/action/pull/215) - Show memtrack capability status in setup status by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) - Run memtrack sudo-less via file capabilities by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) - Use extra events when using samply on linux by [@&open-telemetry#8203;GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#&open-telemetry#8203;404](https://redirect.github.com/CodSpeedHQ/runner/pull/404) - Update `PerfEvent` to also support samply format by [@&open-telemetry#8203;GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Use isolation for with samply by [@&open-telemetry#8203;GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Make eh\_frame\_hdr optional in unwind data (V4) by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 1 -->🐛 Bug Fixes - Keep rolling buffer off during executor setup by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [#&open-telemetry#8203;411](https://redirect.github.com/CodSpeedHQ/runner/pull/411) - Gate memory executor behind Linux target by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) - Enable tracking when running without IPC by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) - Tolerate RLIMIT\_MEMLOCK EPERM on modern kernels by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) - Install libc6-dbg during valgrind setup by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [#&open-telemetry#8203;394](https://redirect.github.com/CodSpeedHQ/runner/pull/394) - Skip rustup-wrapped proxy in trace-children by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [#&open-telemetry#8203;405](https://redirect.github.com/CodSpeedHQ/runner/pull/405) - Retry streamed uploads on transient failures by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [#&open-telemetry#8203;399](https://redirect.github.com/CodSpeedHQ/runner/pull/399) - Extract unwind data for binaries without eh\_frame\_hdr by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 10 -->💼 Other - Drop OpenSSL, move TLS stack to rustls ([#&open-telemetry#8203;406](https://redirect.github.com/CodSpeedHQ/action/issues/406)) by [@&open-telemetry#8203;art049](https://redirect.github.com/art049) in [#&open-telemetry#8203;406](https://redirect.github.com/CodSpeedHQ/runner/pull/406) ##### <!-- 2 -->🏗️ Refactor - Split executor privilege granting into grant\_privileges by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 3 -->📚 Documentation - Add unwind data version changelog by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [#&open-telemetry#8203;393](https://redirect.github.com/CodSpeedHQ/runner/pull/393) ##### <!-- 7 -->⚙️ Internals - chore: bump runner version to 4.17.6 by [@&open-telemetry#8203;github-actions](https://redirect.github.com/github-actions)\[bot] in [#&open-telemetry#8203;216](https://redirect.github.com/CodSpeedHQ/action/pull/216) - Grant memtrack file capabilities before memory tests by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [#&open-telemetry#8203;407](https://redirect.github.com/CodSpeedHQ/runner/pull/407) - Bump samply to support additional events by [@&open-telemetry#8203;GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Add helper script to use local versions of samply and framehop easily by [@&open-telemetry#8203;GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) #### Install codspeed-runner 4.17.6 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-installer.sh | sh ``` #### Download codspeed-runner 4.17.6 | File | Platform | Checksum | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | [codspeed-runner-aarch64-apple-darwin.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-aarch64-apple-darwin.tar.gz.sha256) | | [codspeed-runner-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-aarch64-unknown-linux-musl.tar.gz.sha256) | | [codspeed-runner-x86\_64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-x86_64-unknown-linux-musl.tar.gz.sha256) | **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> **Full Changelog**: <CodSpeedHQ/action@v4.17.5...v4.17.6> </details> <details> <summary>zizmorcore/zizmor-action (zizmorcore/zizmor-action)</summary> ### [`v0.5.7`](https://redirect.github.com/zizmorcore/zizmor-action/compare/v0.5.6...v0.5.7) [Compare Source](https://redirect.github.com/zizmorcore/zizmor-action/compare/v0.5.6...v0.5.7) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzUuMCIsInVwZGF0ZWRJblZlciI6IjQzLjIzNS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
…etry#15371) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Adds support for defining stability levels for resource attributes in `cmd/mdatagen`. <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#15312 <!--Describe what testing was performed and which tests were added.--> #### Testing - Added cmd/mdatagen/internal/testdata/invalid_rattr_stability.yaml as a test fixture - Added a test case in metadata_test.go that verifies an invalid stability value produces the correct error - Ran go test ./internal/... and all tests passed <!--Describe the documentation added.--> #### Documentation - Added stability under resource attributes in metadata-schema.yaml <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…pen-telemetry#15474) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Adds CI check for PRs from non-members to have a linked issue. This is a pre-requisite for us to explore implementing other workflows for flagging duplicate work or work on issues that are not ready to be worked on. This tries to start small by excluding PRs marked as `[chore]` and smalls PRs. We can make it more strict over time. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…on (open-telemetry#15489) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Migrated `config/configcompression` from a hand-written Config struct to `mdatagen` schema-based configuration. Part of https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/rfcs/component-configuration-schema-roadmap.md <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.--> --------- Co-authored-by: Evan Bradley <11745660+evan-bradley@users.noreply.github.com>
…open-telemetry#15459) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Fixes the extra line in the documentation.md between extended description and table Similar to open-telemetry#15307 <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#15458 <!--Describe what testing was performed and which tests were added.--> #### Testing Local testing with one of the component. <!--Describe the documentation added.--> #### Documentation <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Added the publish of health check event in the memory limiter using componentstatus.ReportStatus <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#14700 <!--Describe what testing was performed and which tests were added.--> #### Testing All unit tests are added and local testing is done with `healthcheckv2` extenstion. <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.-->
…is false (open-telemetry#15443) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description When `Enabled` is set to `false`, the `Validate()` method in `BackOffConfig` returned early without checking any field values. This meant invalid configurations (e.g. negative `InitialInterval`) would silently pass validation. Removed the early return so all fields are validated regardless of the `Enabled` flag. <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#15437 <!--Describe what testing was performed and which tests were added.--> #### Testing Updated `TestDisabledWithInvalidValues` to assert that errors are returned for invalid field values even when `Enabled=false`. Added `TestDisabledWithValidValues` to confirm a well-formed config with `Enabled=false` still passes. Run: `go test ./config/configretry/...` <!--Describe the documentation added.--> #### Documentation No documentation changes needed. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself.
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description [Go Report Card](https://goreportcard.com/) has been retired. The badge can be removed from the readme. Matches the removal in contrib open-telemetry/opentelemetry-collector-contrib#49538 <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…bytes and otelcol_processor_batch_batch_send_size_bytes (open-telemetry#15463) #### Description Replace bucket boundaries for `otelcol_exporter_queue_batch_send_size_bytes` and `otelcol_processor_batch_batch_send_size_bytes` with powers of two from `128 B` to `16 MiB.` The previous sub-kilobyte buckets were not useful for byte-scale payloads, and the exporter metric topped out at` 6 KB` so nearly all observations landed in +Inf. #### Link to tracking issue Fixes open-telemetry#15535 #### Testing - Unit tests already exist and passed. - Ran `go generate ./...` and checked output `generated_telemetry.go` file. #### Documentation No documentation update necessary. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself.
…-telemetry#15530) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Validate metrics units using `github.com/iimos/ucum`. Depends on open-telemetry/opentelemetry-collector-contrib/pull/49453 <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [golang.org/x/mod](https://pkg.go.dev/golang.org/x/mod) | [`v0.37.0` → `v0.38.0`](https://cs.opensource.google/go/x/mod/+/refs/tags/v0.37.0...refs/tags/v0.38.0) |  |  | | [golang.org/x/sys](https://pkg.go.dev/golang.org/x/sys) | [`v0.46.0` → `v0.47.0`](https://cs.opensource.google/go/x/sys/+/refs/tags/v0.46.0...refs/tags/v0.47.0) |  |  | | [golang.org/x/text](https://pkg.go.dev/golang.org/x/text) | [`v0.39.0` → `v0.40.0`](https://cs.opensource.google/go/x/text/+/refs/tags/v0.39.0...refs/tags/v0.40.0) |  |  | | [golang.org/x/tools](https://pkg.go.dev/golang.org/x/tools) | [`v0.47.0` → `v0.48.0`](https://cs.opensource.google/go/x/tools/+/refs/tags/v0.47.0...refs/tags/v0.48.0) |  |  | | [golang.org/x/vuln](https://pkg.go.dev/golang.org/x/vuln) | [`v1.5.0` → `v1.6.0`](https://cs.opensource.google/go/x/vuln/+/refs/tags/v1.5.0...refs/tags/v1.6.0) |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the [Dependency Dashboard](..open-telemetry/issues/8903) for more information. --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTkuMiIsInVwZGF0ZWRJblZlciI6IjQzLjI1OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> Co-authored-by: Yang Song <yang.song@datadoghq.com>
…DME (open-telemetry#15575) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Adds row for semantic conventions version used by component. #### Documentation <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…#15578) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [github.com/prometheus/common](https://redirect.github.com/prometheus/common) | `v0.69.0` → `v0.70.0` |  |  | --- ### Release Notes <details> <summary>prometheus/common (github.com/prometheus/common)</summary> ### [`v0.70.0`](https://redirect.github.com/prometheus/common/blob/HEAD/CHANGELOG.md#v0700--2026-07-10) [Compare Source](https://redirect.github.com/prometheus/common/compare/v0.69.0...v0.70.0) ##### Enhancements - route: add support for the QUERY HTTP method. [#&open-telemetry#8203;932](https://redirect.github.com/prometheus/common/issues/932) ##### Bugfixes - config: fix `TLSVersion.String()` printing a pointer address instead of the numeric version for unknown TLS versions. [#&open-telemetry#8203;929](https://redirect.github.com/prometheus/common/issues/929) ##### Internal - expfmt: add `BenchmarkConvertMetricFamily` comparing the Prometheus text and OpenMetrics 1.0 encoders. [#&open-telemetry#8203;943](https://redirect.github.com/prometheus/common/issues/943) - Update Go dependencies. [#&open-telemetry#8203;933](https://redirect.github.com/prometheus/common/issues/933) [#&open-telemetry#8203;934](https://redirect.github.com/prometheus/common/issues/934) - Synchronize common files from prometheus/prometheus. [#&open-telemetry#8203;923](https://redirect.github.com/prometheus/common/issues/923) [#&open-telemetry#8203;927](https://redirect.github.com/prometheus/common/issues/927) [#&open-telemetry#8203;930](https://redirect.github.com/prometheus/common/issues/930) [#&open-telemetry#8203;937](https://redirect.github.com/prometheus/common/issues/937) - Update GitHub Actions. [#&open-telemetry#8203;938](https://redirect.github.com/prometheus/common/issues/938) [#&open-telemetry#8203;939](https://redirect.github.com/prometheus/common/issues/939) [#&open-telemetry#8203;940](https://redirect.github.com/prometheus/common/issues/940) [#&open-telemetry#8203;941](https://redirect.github.com/prometheus/common/issues/941) [#&open-telemetry#8203;942](https://redirect.github.com/prometheus/common/issues/942) **Full Changelog**: <prometheus/common@v0.69.0...v0.70.0> </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTkuMiIsInVwZGF0ZWRJblZlciI6IjQzLjI1OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com>
Update otelbot token creation to use GitHub App client IDs. The app-id input for `actions/create-github-app-token` is deprecated in favor of client-id. The matching `OTELBOT_*_CLIENT_ID` organization variables have been provisioned, so this updates direct token creation from `app-id / *_APP_ID` to `client-id / *_CLIENT_ID`. Tracking issue: open-telemetry/admin#744 Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
…lemetry#15558) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description A regression where the zPages extension would have been broken was caught only incidentally by a builder integration test here: open-telemetry#15557. This adds a proper E2E test that verifies the service host implements the anonymous interface used by the zPages extension. We could break the interface into a package imported by each as well. I opted for the test instead just because I would rather not introduce a package for a minor one-off interface. But if that's the preferred approach I'm okay closing this and taking that route. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.--> --------- Co-authored-by: Pablo Baeyens <pbaeyens31+github@gmail.com> Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [golang.org/x/net](https://pkg.go.dev/golang.org/x/net) | [`v0.56.0` → `v0.57.0`](https://cs.opensource.google/go/x/net/+/refs/tags/v0.56.0...refs/tags/v0.57.0) |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the [Dependency Dashboard](..open-telemetry/issues/8903) for more information. --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTkuMiIsInVwZGF0ZWRJblZlciI6IjQzLjI1OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> Co-authored-by: Yang Song <songy23@users.noreply.github.com> Co-authored-by: Alex Boten <223565+codeboten@users.noreply.github.com>
…ata config from JSON Schema (open-telemetry#15529) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This branch refactors mdatagen's config generator and its underlying `internal/schemagen` package by separating metadata and json schema models. <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#15315 <!--Describe what testing was performed and which tests were added.--> #### Testing 1. Verified against sample components 2. Unit tests adjusted <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…ry#15461) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Refer Issue <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#5832 <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…0.156.0 (open-telemetry#15583) > ℹ️ **Note** > > This PR body was truncated due to platform limits. This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [go.opentelemetry.io/collector/extension/xextension](https://redirect.github.com/open-telemetry/opentelemetry-collector) | `v0.117.0` → `v0.156.0` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the [Dependency Dashboard](../issues/8903) for more information. --- ### Release Notes <details> <summary>open-telemetry/opentelemetry-collector (go.opentelemetry.io/collector/extension/xextension)</summary> ### [`v0.156.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1620v01560) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.155.0...v0.156.0) ##### 💡 Enhancements 💡 - `cmd/mdatagen`: Add support for defining stability levels for resource attributes ([#​15312](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15312)) - `cmd/mdatagen`: Add semantic convention reference to resource attributes ([#​15313](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15313)) - `processor/memory_limiter`: Adding health events for the memorylimiter ([#​14700](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15458)) - `exporter/otlp_http`: Treat errors parsing successful (2xx) HTTP response bodies as permanent errors to prevent retrying already-accepted data. ([#​15386](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15437)) - `pkg/service`: Ensure receivers always start after all other components ([#​15495](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14587)) When using ${env:VAR:-} with an unset variable, the empty default now correctly resolves to an empty string instead of nil. <!-- previous-version --> ### [`v0.155.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1610v01550) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.154.0...v0.155.0) ##### 🛑 Breaking changes 🛑 - `pkg/confighttp`: Remove stabilized gate `confighttp.framedSnappy` ([#​15420](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15420)) - `pkg/configoptional`: Remove stabilized gate `configoptional.AddEnabledField`. ([#​15421](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15421)) - `pkg/confmap`: Remove stabilized featuregate `confmap.newExpandedValueSanitizer` ([#​15418](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15418)) - `pkg/exporterhelper`: Remove stable gate `exporter.PersistRequestContext`. ([#​15424](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15424)) - `pkg/otelcol`: Remove stable gate `otelcol.printInitialConfig` ([#​15425](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15425)) - `pkg/service`: Remove stable featuregate `telemetry.UseLocalHostAsDefaultMetricsAddress` ([#​15419](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15419)) - `pkg/xpdata`: Remove stable gate `pdata.enableRefCounting`. ([#​15426](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/11203)) ##### 🚀 New components 🚀 - `cmd/schemagen`: Move the `schemagen` CLI from opentelemetry-collector-contrib to this repository as `cmd/schemagen`. ([#​14543](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector-contrib/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector-contrib/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15423)) - `cmd/mdatagen`: Fix known acronyms at the end of generated Go identifiers to be all-caps, same as in any other position ([#​15438](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15438)) - `cmd/schemagen`: Fix mode detection when using `-p` to target a package outside the current directory. ([#​15453](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15453)) A new `-m component|package` flag is available as a manual override when auto-detection is not possible. <!-- previous-version --> ### [`v0.154.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1600v01540) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.153.0...v0.154.0) ##### 🛑 Breaking changes 🛑 - `cmd/builder`: The `--skip-get-modules` flag will no longer regenerate your `go.mod` file. ([#​15390](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13829)) - `pkg/confighttp`: Add `ExposedHeaders` field to `CORSConfig` to allow setting the `Access-Control-Expose-Headers` response header. ([#​15119](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15119)) ##### 🧰 Bug fixes 🧰 - `cmd/mdatagen`: Removes the extra line in the README.md between status and description ([#​15306](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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()`. <!-- previous-version --> ### [`v0.153.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1590v01530) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.152.1...v0.153.0) ##### 🛑 Breaking changes 🛑 - `pkg/configoptional`: Stabilize feature gate configoptional.AddEnabledField ([#​15333](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15333)) - `pkg/confmap`: Stabilize confmap.newExpandedValueSanitizer feature gate ([#​15339](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15339)) - `pkg/exporterhelper`: mark exporter.PersistRequestContext as stable ([#​15330](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15330)) - `pkg/otelcol`: Stabilize otelcol.printInitialConfig gate ([#​15340](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15340)) - `pkg/pdata`: Remove pdata.useCustomProtoEncoding feature gate ([#​15332](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15332)) - `pkg/service`: Stabilize telemetry.UseLocalHostAsDefaultMetricsAddress gate ([#​15342](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15342)) - `pkg/xpdata`: Stabilize pdata.enableRefCounting feature gate ([#​15331](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15331)) ##### 🧰 Bug fixes 🧰 - `pkg/config/configgrpc`: Fix memory corruption and fatal error in Snappy ([#​15237](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15237), [#​15320](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15320)) <!-- previous-version --> ### [`v0.152.1`](https://redirect.github.com/open-telemetry/opentelemetry-collector/releases/tag/v0.152.1): v1.58.0/v0.152.1 [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.152.0...v0.152.1) ##### 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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15262)) - `pkg/confighttp`: Recover from panics in decompression libraries, return HTTP 400 instead of 500. ([#​13228](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13228)) - `pkg/confighttp`: Enforce `max_request_body_size` on `Content-Encoding: snappy` requests before the decoded buffer is allocated. ([#​15252](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15252)) - `pkg/otelcol`: Stop emitting verbose gRPC transport messages at WARN during normal client disconnect. ([#​5169](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/uber-go/zap/issues/1544). - `pkg/pdata`: `pcommon.Value.AsString` no longer HTML-escapes `<`, `>`, and `&` inside `ValueTypeMap` and `ValueTypeSlice` values, matching the behavior already used for `ValueTypeStr`. ([#​14662](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14662)) - `pkg/service`: Fix Prometheus config defaults mismatch when host is explicitly set in telemetry configuration. ([#​13867](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15135)) <!-- previous-version --> #### API Changelog ##### 🚩 Deprecations 🚩 - `pkg/xconfmap`: Deprecate `xconfmap.Validator` and `confmap.Validate` in favor of `confmap.Validator` and `confmap.Validate`. ([#​15142](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15142)) ##### 💡 Enhancements 💡 - `cmd/mdatagen`: Add `go_struct.ignore_default` flag to suppress default value generation for individual config fields. ([#​15156](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14662)) <!-- previous-version --> ### [`v0.152.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1580v01520) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.151.0...v0.152.0) ##### 💡 Enhancements 💡 - `pkg/exporterhelper`: Add `otelcol_exporter_in_flight_requests` metric to track the number of export requests currently in-flight per exporter. ([#​15009](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15262)) - `pkg/confighttp`: Recover from panics in decompression libraries, return HTTP 400 instead of 500. ([#​13228](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13228)) - `pkg/confighttp`: Enforce `max_request_body_size` on `Content-Encoding: snappy` requests before the decoded buffer is allocated. ([#​15252](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15252)) - `pkg/otelcol`: Stop emitting verbose gRPC transport messages at WARN during normal client disconnect. ([#​5169](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/uber-go/zap/issues/1544). - `pkg/pdata`: `pcommon.Value.AsString` no longer HTML-escapes `<`, `>`, and `&` inside `ValueTypeMap` and `ValueTypeSlice` values, matching the behavior already used for `ValueTypeStr`. ([#​14662](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14662)) - `pkg/service`: Fix Prometheus config defaults mismatch when host is explicitly set in telemetry configuration. ([#​13867](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15135)) <!-- previous-version --> ### [`v0.151.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1570v01510) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.150.0...v0.151.0) ##### 🛑 Breaking changes 🛑 - `cmd/builder`: In the generated Collector source, the `replace` statements in the Go module will now use relative paths by default. ([#​15097](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15096)) ##### 💡 Enhancements 💡 - `all`: Add declarative schema support for service telemetry resource configuration. ([#​14411](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14411)) The `service::telemetry::resource` configuration now accepts the declarative schema with explicit name/value pairs: ```yaml 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: ```yaml 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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14998)) - `exporter/otlp_http`: Added the `server.address` and `url.path` attributes to metrics generated by the otlp\_http exporter. ([#​14998](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14998)) - `pkg/config/configgrpc`: Add `UserAgent` field to `ClientConfig` to allow overriding the default gRPC user-agent string. ([#​14686](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15085)) - `pkg/service`: Emit a warning when using the old v0.2.0 declarative config format ([#​15088](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15088)) ##### 🧰 Bug fixes 🧰 - `pkg/otelcol`: Print components exactly once in the `otelcol components` command ([#​14682](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14487)) - `pkg/pprofile`: Fix data corruption of resource and scope attributes after marshal-unmarshal-merge round-trip. ([#​15084](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15084)) - `pkg/service`: Non-string resource attributes in telemetry configuration now return an error instead of panicking ([#​15171](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15171)) - `pkg/xscraperhelper`: fix the merge of profiles in the profiling scraper helpers ([#​14790](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14790)) - `receiver/otlp`: Fix profiles receiver reporting its samples as spans ([#​15089](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15089)) <!-- previous-version --> ### [`v0.150.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1560v01500) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.149.0...v0.150.0) ##### 💡 Enhancements 💡 - `all`: Update semconv package from 1.38.0 to 1.40.0 ([#​15095](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15095)) - `cmd/mdatagen`: Only allow the `ToVersion` feature flag attribute to be set for the `Stable` and `Deprecated` stages. ([#​15040](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15040)) To better match the feature flag README (<https://github.com/open-telemetry/opentelemetry-collector/blob/main/featuregate/README.md#feature-lifecycle>). ##### 🧰 Bug fixes 🧰 - `exporter/debug`: Guard from out of bounds profiles dictionary indices ([#​14803](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14803)) - `pdata/pprofile`: create a copy when the input is marked as read-only ([#​15080](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/15080)) - `pkg/otelcol`: Fix missing default values in unredacted print-config command by introducing confmap.WithUnredacted MarshalOption. ([#​14750](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14756)) <!-- previous-version --> ### [`v0.149.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1550v01490) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.148.0...v0.149.0) ##### 🛑 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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13380)) - `all`: Upgrade the profiles stability status to alpha ([#​14817](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13297)) ##### 🧰 Bug fixes 🧰 - `cmd/mdatagen`: Fix entity code generation so `extra_attributes` are emitted as resource attributes instead of entity descriptive attributes. ([#​14778](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14778)) <!-- previous-version --> ### [`v0.148.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1540v01480) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.147.0...v0.148.0) ##### ❗ 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: ```yaml 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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14814) for details and updates. ##### 🛑 Breaking changes 🛑 - `all`: Change metric units to be singular to match OTel specification, e.g. `{requests}` -> `{request}` ([#​14753](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14753)) ##### 💡 Enhancements 💡 - `cmd/mdatagen`: Add deprecated\_type field to allow specifying an alias for component types. ([#​14718](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14718)) - `cmd/mdatagen`: Generate entity-scoped MetricsBuilder API that enforces entity-metric associations at compile time ([#​14659](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14659)) - `cmd/mdatagen`: Skip generating reaggregation config options for metrics that have no aggregatable attributes. ([#​14689](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14689)) - `pkg/service`: The internal status reporter no longer drops repeated Ok and RecoverableError statuses ([#​14282](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/12591)) - `exporter/debug`: Add printing of metric metadata in detailed verbosity. ([#​14667](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14667)) - `exporter/otlp_grpc`: Prevent nil pointer panic when push methods are called before the OTLP exporter initializes its gRPC clients. ([#​14663](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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. <!-- previous-version --> ### [`v0.147.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1530v01470) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.146.1...v0.147.0) ##### 💡 Enhancements 💡 - `exporter/debug`: Output bucket counts for exponential histogram data points in normal verbosity. ([#​10463](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/10463)) - `pkg/exporterhelper`: Add `metadata_keys` configuration to `sending_queue.batch.partition` to partition batches by client metadata ([#​14139](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14436)) - `cmd/mdatagen`: Fix duplicate error output when CLI command execution fails in the mdatagen tool. ([#​14436](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14436)) - `cmd/mdatagen`: Fix semconv URL validation for metrics with underscores in their names ([#​14583](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14634)) - `pkg/config/configmiddleware`: Add context.Context to HTTP middleware interface constructors. ([#​14523](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14491)) - `pkg/scraperhelper`: Log scrapers now emit log-appropriate receiver telemetry ([#​14654](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/12279), [#​14620](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14620)) <!-- previous-version --> ### [`v0.146.1`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1520v01461) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.146.0...v0.146.1) <!-- previous-version --> ### [`v0.146.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v01460) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.145.0...v0.146.0) ##### 🛑 Breaking changes 🛑 - `all`: Increase minimum Go version to 1.25 ([#​14567](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14567)) ##### 🚩 Deprecations 🚩 - `pdata/pprofile`: Declare removed aggregation elements as deprecated. ([#​14528](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14528)) ##### 💡 Enhancements 💡 - `all`: Add detailed failure attributes to exporter send\_failed metrics at detailed telemetry level. ([#​13956](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14530)) The new `init` subcommand initializes a new custom collector - `cmd/builder`: Add "telemetry" field to allow configuring telemetry providers ([#​14575](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14113)) - `cmd/mdatagen`: Add optional `relationships` field to entity schema in metadata.yaml ([#​14284](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14284)) - `exporter/debug`: Add `output_paths` configuration option to control output destination when `use_internal_logger` is false. ([#​10472](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14569)) - `cmd/mdatagen`: Fix panic when mdatagen is run without arguments. ([#​14506](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14506)) - `pdata/pprofile`: Fix off-by-one issue in dictionary lookups. ([#​14534](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14534)) - `pkg/config/confighttp`: Fix high cardinality span name from request method from confighttp server internal telemetry ([#​14516](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14516)) Follow spec to bound request method cardinality. - `pkg/otelcol`: Ignore component aliases in the `otelcol components` command ([#​14492](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14492)) - `pkg/otelcol`: Order providers and converters in alphabetical order in the `components` subcommand. ([#​14476](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14476)) <!-- previous-version --> ### [`v0.145.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1510v01450) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.144.0...v0.145.0) ##### 💡 Enhancements 💡 - `pkg/scraperhelper`: ScraperID has been added to the logs for metrics, logs, and profiles ([#​14461](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14461)) ##### 🧰 Bug fixes 🧰 - `exporter/otlp_grpc`: Fix the OTLP exporter balancer to use round\_robin by default, as intended. ([#​14090](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14090)) - `pkg/config/configoptional`: Fix `Unmarshal` methods not being called when config is wrapped inside `Optional` ([#​14500](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14307)) <!-- previous-version --> ### [`v0.144.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1500v01440) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.143.0...v0.144.0) ##### 🛑 Breaking changes 🛑 - `pkg/exporterhelper`: Change verbosity level for otelcol\_exporter\_queue\_batch\_send\_size metric to detailed. ([#​14278](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14278)) - `pkg/service`: Remove deprecated `telemetry.disableHighCardinalityMetrics` feature gate. ([#​14373](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14373)) - `pkg/service`: Remove deprecated `service.noopTracerProvider` feature gate. ([#​14374](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14374)) ##### 🚩 Deprecations 🚩 - `exporter/otlp_grpc`: Rename `otlp` exporter to `otlp_grpc` exporter and add deprecated alias `otlp`. ([#​14403](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14403)) - `exporter/otlp_http`: Rename `otlphttp` exporter to `otlp_http` exporter and add deprecated alias `otlphttp`. ([#​14396](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14396)) ##### 💡 Enhancements 💡 - `cmd/builder`: Avoid duplicate CLI error logging in generated collector binaries by relying on cobra's error handling. ([#​14317](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/10726)) - `cmd/mdatagen`: Add optional `display_name` and `description` fields to metadata.yaml for human-readable component names ([#​14114](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14425)) - `pkg/xexporterhelper`: Reenable batching for profiles ([#​14313](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14313)) - `receiver/nop`: add profiles signal support ([#​14253](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14253)) ##### 🧰 Bug fixes 🧰 - `pkg/exporterhelper`: Fix reference count bug in partition batcher ([#​14444](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14444)) <!-- previous-version --> ### [`v0.143.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1490v01430) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.142.0...v0.143.0) ##### 💡 Enhancements 💡 - `all`: Update semconv import to 1.38.0 ([#​14305](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14305)) - `exporter/nop`: Add profiles support to nop exporter ([#​14331](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14331)) - `pkg/pdata`: Optimize the size and pointer bytes for pdata structs ([#​14339](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14339)) - `pkg/pdata`: Avoid using interfaces/oneof like style for optional fields ([#​14333](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14333)) <!-- previous-version --> ### [`v0.142.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1480v01420) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.141.0...v0.142.0) ##### 💡 Enhancements 💡 - `exporter/debug`: Add logging of dropped attributes, events, and links counts in detailed verbosity ([#​14202](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14202)) - `extension/memory_limiter`: The memorylimiter extension can be used as an HTTP/GRPC middleware. ([#​14081](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14081)) - `pkg/config/configgrpc`: Statically validate gRPC endpoint ([#​10451](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13869)) Note that this does not affect logs exported through OTLP. <!-- previous-version --> ### [`v0.141.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1470v01410) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.140.0...v0.141.0) ##### 🛑 Breaking changes 🛑 - `pkg/config/confighttp`: Use configoptional.Optional for confighttp.ClientConfig.Cookies field ([#​14021](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14021)) ##### 💡 Enhancements 💡 - `pkg/config/confighttp`: Setting `compression_algorithms` to an empty list now disables automatic decompression, ignoring Content-Encoding ([#​14131](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14131)) - `pkg/service`: Update semantic conventions from internal telemetry to v1.37.0 ([#​14232](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14232)) - `pkg/xscraper`: Implement xscraper for Profiles. ([#​13915](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13915)) ##### 🧰 Bug fixes 🧰 - `pkg/config/configoptional`: Ensure that configoptional.None values resulting from unmarshaling are equivalent to configoptional.Optional zero value. ([#​14218](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14218)) <!-- previous-version --> ### [`v0.140.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1460v01400) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.139.0...v0.140.0) ##### 💡 Enhancements 💡 - `cmd/mdatagen`: `metadata.yaml` now supports an optional `entities` section to organize resource attributes into logical entities with identity and description attributes ([#​14051](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13920)) - `connector/forward`: Add support for Profiles to Profiles ([#​14092](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14092)) - `exporter/debug`: Disable sending queue by default ([#​14138](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14021)) - `pkg/otelcol`: This feature has been improved and tested; secure-by-default redacts configopaque values ([#​12369](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/12369)) ##### 🧰 Bug fixes 🧰 - `all`: Ensure service service.instance.id is the same for all the signals when it is autogenerated. ([#​14140](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14140)) <!-- previous-version --> ### [`v0.139.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1450v01390) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.138.0...v0.139.0) ##### 🛑 Breaking changes 🛑 - `cmd/mdatagen`: Make stability.level a required field for metrics ([#​14070](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14070)) - `cmd/mdatagen`: Replace `optional` field with `requirement_level` field for attributes in metadata schema ([#​13913](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/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 explicitly enabled in user config When `requirement_level` is not specified, it defaults to `recomme > ✂ **Note** > > PR body was truncated to here. </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTkuMiIsInVwZGF0ZWRJblZlciI6IjQzLjI1OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
…d `service.partialReloadReceivers` (open-telemetry#15397) #### Description Phase 1 implementation of the [Partial Reload RFC](https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/rfcs/partial-reload.md), receivers only. This adds the `service.partialReload` alpha feature flag (disabled by default) and the `service.partialReloadReceivers` beta feature flag (enabled by default). This allows the overall feature to be enabled with `service.partialReload`, and as different phases occur it allows the ability to disable an individual phase if it becomes problem in the overall partial reload system. <!--Describe what testing was performed and which tests were added.--> #### Testing - `otelcol/config_diff_test.go` - tests covering receiversOnlyChange scenarios (identical configs, receiver-only changes, processor/exporter/connector/extension/telemetry/pipeline changes, connector-as-receiver changes) - `service/internal/graph/graph_test.go`.`UpdateReceivers` - add receiver, remove receiver, config change rebuild, no-op, pipeline set change, simultaneous add/remove/rebuild, connector-as-receiver untouched, nil host guard - `otelcol/collector_test.go`.`TestCollectorPartialReceiverReload` - verifies end-to-end that with the feature gate enabled, a receiver-only config change triggers partial reload (stays in StateRunning, logs partial reload message, never logs full restart) - `otelcol/collector_test.go` - add benchmark tests for add, remove, update a receiver <!--Describe the documentation added.--> #### Documentation Added documentation on how configuration reload works. Added documentation on how configuration reload works when the `service.receiverPartialReload` feature flag is enabled. #### Authorship - [x] I, a human, wrote this pull request description myself.
…lued attribute (open-telemetry#15572) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Enabling the `process` resource detector (or any detector emitting a slice-valued resource attribute) aborts collector startup with `<Invalid value type []string>`. `createResource` fed the OTel SDK attribute value directly into `pcommon.Value.FromRaw`, which only accepts `[]any` for slices — typed scalar slices (`[]string`/`[]int64`/`[]float64`/`[]bool`) hit the `default` error branch and abort `service.New`. This converts slice-typed SDK attributes element-wise into a `pcommon` slice, mirroring the existing `ToZapFields` SDK-attribute converter (`internal/telemetry/attribute.go`, which type-switches on `attribute.Value.Type()`). Scalar and other types keep the existing `FromRaw` path. The `pcommon.FromRaw`/`AsRaw` `[]any`-symmetric contract (PR open-telemetry#6579) is intentional, so the fix is caller-side rather than in pdata. <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#15571 <!--Describe what testing was performed and which tests were added.--> #### Testing Added a `TestCreateResource` subtest exercising the `process` detector; it asserts the collector resource is built and `process.command_args` is a proper element-wise slice equal to `os.Args` (not a stringified `"[...]"`). Red before the fix (`<Invalid value type []string>`), green after. Full `service/telemetry/otelconftelemetry` module passes with `-race`. <!--Describe the documentation added.--> #### Documentation No changes. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Pavel Lazureykis <pavel@lazureykis.dev>
…#15557) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description The host passed to extensions currently doesn't implement `componentstatus.Reporter` and therefore all calls to `componentstatus.ReportStatus` inside extensions [are ignored](https://github.com/open-telemetry/opentelemetry-collector/blob/d1d8e8ddb283e89ddce0059715dceda5265224c7/component/componentstatus/status.go#L191), preventing them from reporting their own status. This wraps the host so the host given to extensions is suitable for reporting status events. <!-- Issue number if applicable --> #### Link to tracking issue Relates to open-telemetry/opentelemetry-collector-contrib#48758. <!--Describe what testing was performed and which tests were added.--> #### Testing Ran a manual test with a modified zPages extension. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Good prereq for open-telemetry#9477 <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…ls (open-telemetry#15616) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description We return the top-level error variable rather than the variable we check. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…try#15612) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description `confmap.Validator` is available now, so we should use that #### Issue Prereq for open-telemetry#9477 <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.--> --------- Co-authored-by: Pablo Baeyens <pbaeyens31+github@gmail.com>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description The `WaitForReady` option is currently not used outside tests. This makes sure it's properly applied #### Issue Prereq for open-telemetry#9477 <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.--> --------- Co-authored-by: Pablo Baeyens <pbaeyens31+github@gmail.com>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description The function has been deprecated for several versions now and is ready for removal. <!-- Issue number if applicable --> #### Link to tracking issue Prereq for open-telemetry#9477 <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This option has been around for months now and is being used by stable modules. It should be safe to stabilize since we will be using it for the foreseeable future. This also removes an `xconfmap` dependency from modules that use configoptional. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…ion host wrapper (open-telemetry#15619) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description The host wrapper introduced in open-telemetry#15557 hid the host's optional capability interfaces (`ModuleInfo`, `ExposeExporters`, `ComponentFactory`) from extensions, breaking type assertions such as `host.(hostcapabilities.ModuleInfo)` used by the OpAMP extension. <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#15620 <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.--> --------- Co-authored-by: Evan Bradley <11745660+evan-bradley@users.noreply.github.com> Co-authored-by: Dmitry Anoshin <anoshindx@gmail.com>
The following commands were run to prepare this release: - make chlog-update VERSION=v1.63.0/v0.157.0 - make prepare-release PREVIOUS_VERSION=1[.]62[.]0 RELEASE_CANDIDATE=1.63.0 MODSET=stable - make prepare-release PREVIOUS_VERSION=0[.]156[.]0 RELEASE_CANDIDATE=0.157.0 MODSET=beta --------- Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Unblocks open-telemetry/opentelemetry-collector-contrib#49767. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…15632) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Adds `metadata.yaml` to `configtls` and add `goleak` configuration. <!-- Issue number if applicable --> #### Link to tracking issue Updates open-telemetry#9221 <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
…emetry#15626) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [google.golang.org/grpc](https://redirect.github.com/grpc/grpc-go) | `v1.82.0` → `v1.82.1` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the [Dependency Dashboard](..open-telemetry/issues/8903) for more information. --- ### Release Notes <details> <summary>grpc/grpc-go (google.golang.org/grpc)</summary> ### [`v1.82.1`](https://redirect.github.com/grpc/grpc-go/releases/tag/v1.82.1): Release 1.82.1 [Compare Source](https://redirect.github.com/grpc/grpc-go/compare/v1.82.0...v1.82.1) ### Security - server: Stop reading from the connection when flooded by HTTP/2 frames. The default value for this limit is 100 frames, excluding DATA and HEADERS, and may be changed by setting environment variable `GRPC_GO_EXPERIMENTAL_CONTROL_BUFFER_THROTTLE_LIMIT`. - xds/rbac: Support `Metadata` and `RequestedServerName` permissions matcher fields. If present in a DENY rule, previously these would be ignored and fail-open. - xds/rbac: Fix panic when parsing unsupported fields in `NotRule`/`NotId` permissions. - xds/rbac: Support the deprecated `source_ip` principal identifier by treating it as equivalent to `direct_remote_ip`. </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "on tuesday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-collector). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNzIuNCIsInVwZGF0ZWRJblZlciI6IjQzLjI3Mi40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZWJvdCJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> Co-authored-by: Yang Song <songy23@users.noreply.github.com>
#### Description Running [the "Inform Incompatible PRs" CI](https://github.com/open-telemetry/opentelemetry-collector/blob/main/.github/workflows/api-compatibility.yml) locally, it seems it only checks for API breakage for the packages inside the root module. This PR rewrites the relevant Makefiles to actually check all non-internal packages inside all stable Collector modules, and updates the CI check to match. #### Testing I briefly tested the `make` commands on open-telemetry#15589, confirming that the expected breaking change is now correctly flagged. #### Authorship - [x] I, a human, wrote this pull request description myself.
…en-telemetry#15514) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Adds first-class extended type aliases to cmd/mdatagen, so `metadata.yaml` authors can write a Go-idiomatic type name directly as the type field of a config property, instead of combining `type` + `format` or `type` + `x-customType` by hand. <!-- Issue number if applicable --> #### Link to tracking issue Fixes open-telemetry#15513 <!--Describe what testing was performed and which tests were added.--> #### Testing - Sample components extended with examples - Changes covered with unit tests <!--Describe the documentation added.--> #### Documentation Extended README of mdatagen with info about usage of extended types and how to add new. <!--Authorship attestation. See AGENTS.md for details. AI agents must not check this box on behalf of the user; the human author must check it themselves before the PR is ready for review.--> #### Authorship - [x] I, a human, wrote this pull request description myself. <!--Please delete paragraphs that you did not use before submitting.-->
Adds a `tests: goleak:` declaration to the filter package's metadata.yaml and the corresponding generated_package_test.go so that goroutine leaks are detected automatically on every test run. Follows the same pattern used in config/configtls (PR open-telemetry#15632). Assisted-by: Claude Sonnet 4.6
| runs-on: ubuntu-24.04 | ||
| steps: | ||
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | ||
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7 |
| if: ${{ github.event.pull_request.user.login != 'dependabot[bot]' && github.repository == 'open-telemetry/opentelemetry-collector' }} | ||
| steps: | ||
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | ||
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7 |
| cache: false | ||
|
|
||
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | ||
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7 |
| runs-on: ubuntu-24.04 | ||
| steps: | ||
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 | ||
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds a
tests: goleak:declaration to the filter package's metadata.yaml and the corresponding generated_package_test.go so that goroutine leaks are detected automatically on every test run. Follows the same pattern as open-telemetry#15632.Testing
Ran go test ./... in filter/ — all tests pass with goleak enabled
Authorship