[consumer/consumertest] Add ProfileCount()#14251
[consumer/consumertest] Add ProfileCount()#14251mx-psi merged 14 commits intoopen-telemetry:mainfrom
Conversation
In open-telemetry#14239 (Profiles)ProfileCount() was introduced. Provide this function also in consumertests. Signed-off-by: Florian Lehner <[email protected]>
|
Update 2026-01-09: As #14252 got merged, a changelog was added. |
Merging this PR will degrade performance by 29.48%
|
| Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|
| ❌ | BenchmarkTraceSizeBytes |
301.9 µs | 419.3 µs | -27.99% |
| ❌ | BenchmarkTracesToProto2k |
70 µs | 96.2 µs | -27.17% |
| ❌ | BenchmarkProfilesToProto |
1.2 µs | 1.7 µs | -26.2% |
| ❌ | BenchmarkLogsToProto2k |
44.7 µs | 63.4 µs | -29.48% |
Comparing florianl:profiles-consumertest (77f2dd9) with main (54ac205)
Footnotes
-
20 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #14251 +/- ##
==========================================
- Coverage 92.22% 92.21% -0.02%
==========================================
Files 676 676
Lines 41643 41649 +6
==========================================
Hits 38407 38407
- Misses 2197 2201 +4
- Partials 1039 1041 +2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Signed-off-by: Florian Lehner <[email protected]>
|
This changes a public API. So it needs a changelog entry. |
This comment was marked as outdated.
This comment was marked as outdated.
|
This PR was marked stale due to lack of activity. It will be closed in 14 days. |
This comment was marked as outdated.
This comment was marked as outdated.
Signed-off-by: Florian Lehner <[email protected]>
Signed-off-by: Florian Lehner <[email protected]>
Signed-off-by: Florian Lehner <[email protected]>
|
The failing tests, |
|
friendly ping for feedback @open-telemetry/collector-approvers |
| } | ||
|
|
||
| // ProfileCount returns the number of profiles stored by this sink since last Reset. | ||
| func (ste *ProfilesSink) ProfileCount() int { |
There was a problem hiding this comment.
I introduced SampleCount as it's the smallest element of a profile. I think this raises the question whether we need both sample and profiles count (though we shouldn't remove SampleCount in this PR). What do you think?
There was a problem hiding this comment.
SampleCount() and ProfileCount() exist for different purposes I think. There are use cases, where OTel components don't process samples and are just interested in higher level information on the profiles.
This introduction of ProfileCount() can also not be compared to other signals directly, I think, as other signals don't have multiple layers, like profiles does.
mx-psi
left a comment
There was a problem hiding this comment.
LGTM, can you solve the merge conflict?
250a1ca
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description In open-telemetry#14239 `(Profiles)ProfileCount() int` was introduced. Provide this function also in consumertests for other tests. <!-- Issue number if applicable --> #### Link to tracking issue Fixes # <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Florian Lehner <[email protected]>
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description In open-telemetry#14239 `(Profiles)ProfileCount() int` was introduced. Provide this function also in consumertests for other tests. <!-- Issue number if applicable --> #### Link to tracking issue Fixes # <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Florian Lehner <[email protected]>
* chore(deps): update module github.com/mattn/go-runewidth to v0.0.19 (#14380) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [github.com/mattn/go-runewidth](https://redirect.github.com/mattn/go-runewidth) | `v0.0.17` → `v0.0.19` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>mattn/go-runewidth (github.com/mattn/go-runewidth)</summary> ### [`v0.0.19`](https://redirect.github.com/mattn/go-runewidth/compare/v0.0.18...v0.0.19) [Compare Source](https://redirect.github.com/mattn/go-runewidth/compare/v0.0.18...v0.0.19) ### [`v0.0.18`](https://redirect.github.com/mattn/go-runewidth/compare/v0.0.17...v0.0.18) [Compare Source](https://redirect.github.com/mattn/go-runewidth/compare/v0.0.17...v0.0.18) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (UTC), 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4xIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Alex Boten <[email protected]> * chore(deps): update google.golang.org/genproto/googleapis/rpc digest to 0a764e5 (#14365) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto) | indirect | digest | `ab9386a` → `0a764e5` | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (UTC), 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4xIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: otelbot <[email protected]> Co-authored-by: Yang Song <[email protected]> * chore(deps): update module github.com/spf13/pflag to v1.0.10 (#14383) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [github.com/spf13/pflag](https://redirect.github.com/spf13/pflag) | `v1.0.9` → `v1.0.10` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>spf13/pflag (github.com/spf13/pflag)</summary> ### [`v1.0.10`](https://redirect.github.com/spf13/pflag/releases/tag/v1.0.10) [Compare Source](https://redirect.github.com/spf13/pflag/compare/v1.0.9...v1.0.10) #### What's Changed - fix deprecation comment for (FlagSet.)ParseErrorsWhitelist by [@​thaJeztah](https://redirect.github.com/thaJeztah) in [#​447](https://redirect.github.com/spf13/pflag/pull/447) - remove uses of errors.Is, which requires go1.13, move go1.16/go1.21 tests to separate file by [@​thaJeztah](https://redirect.github.com/thaJeztah) in [#​448](https://redirect.github.com/spf13/pflag/pull/448) #### New Contributors - [@​thaJeztah](https://redirect.github.com/thaJeztah) made their first contribution in [#​447](https://redirect.github.com/spf13/pflag/pull/447) **Full Changelog**: <https://github.com/spf13/pflag/compare/v1.0.9...v1.0.10> </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (UTC), 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4xIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update module github.com/stretchr/objx to v0.5.3 (#14384) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [github.com/stretchr/objx](https://redirect.github.com/stretchr/objx) | `v0.5.2` → `v0.5.3` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>stretchr/objx (github.com/stretchr/objx)</summary> ### [`v0.5.3`](https://redirect.github.com/stretchr/objx/releases/tag/v0.5.3) [Compare Source](https://redirect.github.com/stretchr/objx/compare/v0.5.2...v0.5.3) #### What's Changed - Bump github.com/stretchr/testify from 1.8.4 to 1.9.0 by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​150](https://redirect.github.com/stretchr/objx/pull/150) - Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​152](https://redirect.github.com/stretchr/objx/pull/152) - Add syntax highlighting in README by [@​JakeRoggenbuck](https://redirect.github.com/JakeRoggenbuck) in [#​153](https://redirect.github.com/stretchr/objx/pull/153) - Bump actions/checkout from 4 to 5 by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​155](https://redirect.github.com/stretchr/objx/pull/155) - Bump github.com/stretchr/testify from 1.10.0 to 1.11.0 by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​156](https://redirect.github.com/stretchr/objx/pull/156) - Bump github.com/stretchr/testify from 1.11.0 to 1.11.1 by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​157](https://redirect.github.com/stretchr/objx/pull/157) - Remove codeclimate integration by [@​hanzei](https://redirect.github.com/hanzei) in [#​160](https://redirect.github.com/stretchr/objx/pull/160) - Bump actions/setup-go from 5 to 6 by [@​dependabot](https://redirect.github.com/dependabot)\[bot] in [#​158](https://redirect.github.com/stretchr/objx/pull/158) - Extend test coverage to include go 1.25 by [@​hanzei](https://redirect.github.com/hanzei) in [#​161](https://redirect.github.com/stretchr/objx/pull/161) - Remove duplicate module cache from CI by [@​hanzei](https://redirect.github.com/hanzei) in [#​162](https://redirect.github.com/stretchr/objx/pull/162) - Replace `testify` assertions with custom testing helpers by [@​emilien-puget](https://redirect.github.com/emilien-puget) in [#​159](https://redirect.github.com/stretchr/objx/pull/159) #### New Contributors - [@​JakeRoggenbuck](https://redirect.github.com/JakeRoggenbuck) made their first contribution in [#​153](https://redirect.github.com/stretchr/objx/pull/153) - [@​emilien-puget](https://redirect.github.com/emilien-puget) made their first contribution in [#​159](https://redirect.github.com/stretchr/objx/pull/159) **Full Changelog**: <https://github.com/stretchr/objx/compare/v0.5.2...v0.5.3> </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (UTC), 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4xIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update module go.yaml.in/yaml/v2 to v2.4.3 (#14386) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [go.yaml.in/yaml/v2](https://redirect.github.com/yaml/go-yaml) | `v2.4.2` → `v2.4.3` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>yaml/go-yaml (go.yaml.in/yaml/v2)</summary> ### [`v2.4.3`](https://redirect.github.com/yaml/go-yaml/compare/v2.4.2...v2.4.3) [Compare Source](https://redirect.github.com/yaml/go-yaml/compare/v2.4.2...v2.4.3) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (UTC), 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4xIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [chore][processor/memorylimiter] Add hard limit recommendations to readme (#14356) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Updates a few things in the readme: * Offer general guidance for how to configure the memory limiter processor depending on the host environment. * Add a note that receivers may consume memory before the processor can reject the data. * Other small touchups * chore(deps): update module google.golang.org/protobuf to v1.36.11 (#14387) 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/protobuf](https://redirect.github.com/protocolbuffers/protobuf-go) | `v1.36.8` → `v1.36.11` |  |  | | [google.golang.org/protobuf](https://redirect.github.com/protocolbuffers/protobuf-go) | `v1.36.10` → `v1.36.11` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>protocolbuffers/protobuf-go (google.golang.org/protobuf)</summary> ### [`v1.36.11`](https://redirect.github.com/protocolbuffers/protobuf-go/releases/tag/v1.36.11) [Compare Source](https://redirect.github.com/protocolbuffers/protobuf-go/compare/v1.36.10...v1.36.11) **Full Changelog**: <https://github.com/protocolbuffers/protobuf-go/compare/v1.36.10...v1.36.11> User-visible changes: [CL/726780](https://go-review.googlesource.com/c/protobuf/+/726780): encoding/prototext: Support URL chars in type URLs in text-format. Bug fixes: [CL/728680](https://go-review.googlesource.com/c/protobuf/+/728680): internal/impl: check recursion limit in lazy decoding validation [CL/711015](https://go-review.googlesource.com/c/protobuf/+/711015): reflect/protodesc: fix handling of import options in dynamic builds Maintenance: [CL/728681](https://go-review.googlesource.com/c/protobuf/+/728681): reflect/protodesc: add support for edition unstable [CL/727960](https://go-review.googlesource.com/c/protobuf/+/727960): all: add EDITION\_UNSTABLE support [CL/727940](https://go-review.googlesource.com/c/protobuf/+/727940): types: regenerate using latest protobuf v33.2 release [CL/727140](https://go-review.googlesource.com/c/protobuf/+/727140): internal/testprotos/lazy: convert .proto files to editions [CL/723440](https://go-review.googlesource.com/c/protobuf/+/723440): cmd/protoc-gen-go: add missing annotations for few generated protobuf symbols. [CL/720980](https://go-review.googlesource.com/c/protobuf/+/720980): internal/filedesc: remove duplicative Message.unmarshalOptions [CL/716360](https://go-review.googlesource.com/c/protobuf/+/716360): internal/encoding/tag: use proto3 defaults if proto3 [CL/716520](https://go-review.googlesource.com/c/protobuf/+/716520): proto: un-flake TestHasExtensionNoAlloc [CL/713342](https://go-review.googlesource.com/c/protobuf/+/713342): compiler/protogen: properly filter option dependencies in go-protobuf plugin. [CL/711200](https://go-review.googlesource.com/c/protobuf/+/711200): proto: add test for oneofs containing messages with required fields [CL/710855](https://go-review.googlesource.com/c/protobuf/+/710855): proto: add explicit test for a non-nil but empty byte slice ### [`v1.36.10`](https://redirect.github.com/protocolbuffers/protobuf-go/releases/tag/v1.36.10) [Compare Source](https://redirect.github.com/protocolbuffers/protobuf-go/compare/v1.36.9...v1.36.10) **Full Changelog**: <https://github.com/protocolbuffers/protobuf-go/compare/v1.36.9...v1.36.10> Bug fixes: [CL/704415](https://go-review.googlesource.com/c/protobuf/+/704415): reflect/protodesc: edition-2024-specific properties should not be lost when converting FileDescriptorProto to protoreflect.FileDescriptor Maintenance: [CL/708555](https://go-review.googlesource.com/c/protobuf/+/708555): internal/race\_test: add missing impl.LazyEnabled() t.Skip [CL/703295](https://go-review.googlesource.com/c/protobuf/+/703295): proto: add more invalid group encoding test cases [CL/703276](https://go-review.googlesource.com/c/protobuf/+/703276): internal/impl: verify lazy unmarshal on Deterministic encoding [CL/703275](https://go-review.googlesource.com/c/protobuf/+/703275): internal/impl: stop using deprecated .Field in lazy\_test.go [CL/702795](https://go-review.googlesource.com/c/protobuf/+/702795): all: update to latest github.com/google/go-cmp ### [`v1.36.9`](https://redirect.github.com/protocolbuffers/protobuf-go/releases/tag/v1.36.9) [Compare Source](https://redirect.github.com/protocolbuffers/protobuf-go/compare/v1.36.8...v1.36.9) **Full Changelog**: <https://github.com/protocolbuffers/protobuf-go/compare/v1.36.8...v1.36.9> User-visible changes: [CL/699715](https://go-review.googlesource.com/c/protobuf/+/699715): cmd/protoc-gen-go: add test for "import option" directive [CL/699115](https://go-review.googlesource.com/c/protobuf/+/699115): internal/editionssupport: declare support for edition 2024 [CL/697595](https://go-review.googlesource.com/c/protobuf/+/697595): editions: Fix spelling mistake in panic message </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (UTC), 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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4xIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(deps): update module github.com/shirou/gopsutil/v4 to v4.25.12 (#14388) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [github.com/shirou/gopsutil/v4](https://redirect.github.com/shirou/gopsutil) | `v4.25.11` → `v4.25.12` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>shirou/gopsutil (github.com/shirou/gopsutil/v4)</summary> ### [`v4.25.12`](https://redirect.github.com/shirou/gopsutil/releases/tag/v4.25.12) [Compare Source](https://redirect.github.com/shirou/gopsutil/compare/v4.25.11...v4.25.12) <!-- Release notes generated using configuration in .github/release.yml at v4.25.12 --> #### What's Changed ##### cpu - \[cpu]\[linux]: fix ":" in CPU ModelName by [@​shirou](https://redirect.github.com/shirou) in [#​1960](https://redirect.github.com/shirou/gopsutil/pull/1960) - \[cpu]\[linux]: add riscv cpu parser by [@​mengzhuo](https://redirect.github.com/mengzhuo) in [#​1970](https://redirect.github.com/shirou/gopsutil/pull/1970) - \[cpu]\[darwin]: release pCoreRef in each iteration by [@​uubulb](https://redirect.github.com/uubulb) in [#​1971](https://redirect.github.com/shirou/gopsutil/pull/1971) - \[darwin]: wrap library functions as struct methods by [@​uubulb](https://redirect.github.com/uubulb) in [#​1976](https://redirect.github.com/shirou/gopsutil/pull/1976) ##### disk - Fixes [#​1284](https://redirect.github.com/shirou/gopsutil/issues/1284) by [@​johnnybubonic](https://redirect.github.com/johnnybubonic) in [#​1931](https://redirect.github.com/shirou/gopsutil/pull/1931) - fix disk.Partition cut off after first disk by [@​sni](https://redirect.github.com/sni) in [#​1975](https://redirect.github.com/shirou/gopsutil/pull/1975) - \[disk]\[windows]: add virtual drive for TestGetLogicalDrives by [@​shirou](https://redirect.github.com/shirou) in [#​1977](https://redirect.github.com/shirou/gopsutil/pull/1977) - Add missing mount flags (local, protect) by [@​Kerlenton](https://redirect.github.com/Kerlenton) in [#​1968](https://redirect.github.com/shirou/gopsutil/pull/1968) ##### host - Replace AIX uptime function with ps etimes-based implementation by [@​Dylan-M](https://redirect.github.com/Dylan-M) in [#​1967](https://redirect.github.com/shirou/gopsutil/pull/1967) ##### mem - feat(mem): Add support for Percpu by [@​pvlltvk](https://redirect.github.com/pvlltvk) in [#​1972](https://redirect.github.com/shirou/gopsutil/pull/1972) ##### process - Add NumFDs implementation for Darwin by [@​Kerlenton](https://redirect.github.com/Kerlenton) in [#​1965](https://redirect.github.com/shirou/gopsutil/pull/1965) - \[sensors]\[darwin]: retrieve sensor information in one function call by [@​uubulb](https://redirect.github.com/uubulb) in [#​1973](https://redirect.github.com/shirou/gopsutil/pull/1973) #### New Contributors - [@​Kerlenton](https://redirect.github.com/Kerlenton) made their first contribution in [#​1965](https://redirect.github.com/shirou/gopsutil/pull/1965) - [@​sni](https://redirect.github.com/sni) made their first contribution in [#​1975](https://redirect.github.com/shirou/gopsutil/pull/1975) - [@​pvlltvk](https://redirect.github.com/pvlltvk) made their first contribution in [#​1972](https://redirect.github.com/shirou/gopsutil/pull/1972) - [@​mengzhuo](https://redirect.github.com/mengzhuo) made their first contribution in [#​1970](https://redirect.github.com/shirou/gopsutil/pull/1970) **Full Changelog**: <https://github.com/shirou/gopsutil/compare/v4.25.11...v4.25.12> </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (UTC), 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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4xIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update module go.uber.org/zap to v1.27.1 (#14385) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [go.uber.org/zap](https://redirect.github.com/uber-go/zap) | `v1.27.0` → `v1.27.1` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>uber-go/zap (go.uber.org/zap)</summary> ### [`v1.27.1`](https://redirect.github.com/uber-go/zap/releases/tag/v1.27.1) [Compare Source](https://redirect.github.com/uber-go/zap/compare/v1.27.0...v1.27.1) Enhancements: - [#​1501][]: prevent `Object` from panicking on nils - [#​1511][]: Fix a race condition in `WithLazy`. Thanks to [@​rabbbit](https://redirect.github.com/rabbbit), [@​alshopov](https://redirect.github.com/alshopov), [@​jquirke](https://redirect.github.com/jquirke), [@​arukiidou](https://redirect.github.com/arukiidou) for their contributions to this release. [#​1501]: https://redirect.github.com/uber-go/zap/pull/1501 [#​1511]: https://redirect.github.com/uber-go/zap/pull/1511 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on tuesday" (UTC), 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4xIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [chore] Disable noisy indirect dependency updates with Renovate (#14391) Rolling back https://github.com/open-telemetry/opentelemetry-collector/pull/14345 Enabling indirect updates does not fully eliminate the need for the tidy-dependencies job, but it generates a large number of noisy PRs for every indirect dependency. We can wait for the resolution of https://github.com/renovatebot/renovate/issues/12999 and see whether it helps instead. * [chore] Fix small issues in renovate.json (#14390) - Fix google.golang.org grouping. The url is wrong, it's hosted on github, use package names instead - Remove trailing comma to have valid json * [receiver/nop]: add profiles signal support (#14253) <!--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 `profiles` in the nop receiver. * Reenable profiles batching (#14313) With the introduction of `MergeTo` into profiles, we can now reenable profiles batching! 🥳 Closes https://github.com/open-telemetry/opentelemetry-collector/issues/13106 * chore: split service metric views into an internal package (#14392) Those metric views are getting quite frequent updates, and start becoming less and less trivial to have within a single file. This splits them into their own internal submodule, so we can start splitting them into their own submethods as needed later on. * [chore] [docs] Add component naming guidelines (#14389) Document the new `lower_snake_case` naming convention for OpenTelemetry Collector components in the coding guidelines as result of discussion in #14208. * Add support for deprecated component type aliases (#14349) Related to https://github.com/open-telemetry/opentelemetry-collector/issues/14208 This change allows component authors to register one optional deprecated alias per component type, enabling smooth migrations when renaming components. When an alias is used in configuration, the collector will automatically resolve it to the original component and log a deprecation warning. Changes: - Add `WithDeprecatedTypeAlias` factory option to experimental modules (xreceiver, xexporter, xprocessor, xconnector) - Generate alias expansion code in builder template that: - Populates factory maps with aliases pointing to original factories - Updates module information maps for aliased types - Validates that aliases don't conflict with existing component types - Add deprecation warnings that log when an alias is used: "Using deprecated alias <alias>; use <original> instead" Extensions are left aside for now. * [mdatagen] Add optional display_name field to metadata.yaml (#14115) ## Description This PR adds an optional `display_name` field to metadata.yaml for human-readable component names, as requested in #14114. ## Changes - Added `display_name` field to metadata-schema.yaml - Updated Metadata struct to include DisplayName field - Implemented automatic capitalization of type field when display_name not provided - Modified readme.md.tmpl to generate README titles from display_name - Fixed unused import issue in config_test.go.tmpl - Added test cases for display_name handling - Regenerated internal test code and README files ## Implementation Following the implementation guide from @mx-psi: 1. Added the field to the Metadata struct 2. Added title generation section to readme.md.tmpl template 3. Added comprehensive tests covering both explicit and default display names 4. Verified functionality with OTLP receiver (tested locally) ## Behavior - When `display_name` is set in metadata.yaml, it will be used as the README title - When not set, the component type will be automatically capitalized (e.g., "otlp" becomes "Otlp") - Fully backward compatible - existing components without display_name continue to work ## Testing - Unit tests added for display_name loading - Default value generation tested - Generated test files verified - CI checks passing (gotidy, misspell, multimod-verify, crosslink) Fixes #14114 Co-authored-by: SteveYi <[email protected]> --------- Co-authored-by: Pablo Baeyens <[email protected]> * Add metadata.yaml to consumertest (#14252) This makes consumertest a component, as it can need changelog entries. * Update release tracking issue to match the actual release docs (#14250) The release tracking issue is a bit misleading, as not all actions are actually performed by the collector release manager. And some actions don't really reflect the release docs. This splits the core/contrib/releases releases per their respective managers. I've also updated the "like" issue to a more recent one. * Change verbosity level for otelcol_exporter_queue_batch_send_size metric (#14279) <!-- Issue number if applicable --> #### Link to tracking issue Fixes #14278 --------- Signed-off-by: Israel Blancas <[email protected]> * [chore] use the same modernize as golanglint (#14175) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR ensures we use the same modernize package as [golanglint](https://github.com/golangci/golangci-lint/blob/main/pkg/golinters/modernize/modernize.go#L10) --------- Signed-off-by: Paulo Dias <[email protected]> Co-authored-by: Alex Boten <[email protected]> * [chore] move from DialContext to NewClient (#13663) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Use grpc.NewClient instead of grpc.DialContext <!-- Issue number if applicable --> #### Link to tracking issue Fixes #13632 <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: sivchari <[email protected]> * [chore][receiver/otlp] Add sequential logs benchmark (#14398) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Adds two benchmarks for receiving OTLP logs over HTTP (proto) and gRPC. The goal is to have reliable but not necessarily realistic benchmarks. As such this benchmark does not test concurrent requests (which is important and we should do on a different PR). If these look okay and prove to be non-flaky enough on main, I will add benchmarks for the other stable signals as well. <!-- Issue number if applicable --> #### Link to tracking issue Updates #14111 Updates #12979 * builder: avoid duplicate CLI error logging in generated main (#14317) ### Problem When running an invalid CLI command (for example `otelcorecol foo`), Cobra already prints a user-facing error message. However, the builder-generated `main.go` also logs the same error using `log.Fatalf`, which results in duplicate error output. ### Solution This change updates the builder template to: - remove `log.Fatalf` from `main()` - exit with a non-zero status using `os.Exit(1)` - allow Cobra to fully own CLI error output ### Result **Before** ``` Error: unknown command "foo" for "otelcorecol" Run 'otelcorecol --help' for usage. collector server run finished with error: unknown command "foo" for "otelcorecol" ``` **After** ``` Error: unknown command "foo" for "otelcorecol" Run 'otelcorecol --help' for usage. ``` ### Notes - Change is limited to `cmd/builder/internal/builder/templates/main.go.tmpl` - No behavior change for successful execution paths - Exit code behavior remains unchanged **Closes:** #14302 * [exporter/otlphttp] rename to `otlp_http` with deprecated alias `otlphttp` (#14397) Part of https://github.com/open-telemetry/opentelemetry-collector/issues/14396 * [chore] Simplify experimental factory wrappers (#14395) Removes unnecessary `factoryOpts` wrapper structs from all x-prefixed components, simplifying factory option handling by applying options directly to the factory. * [xscraperhelper] init package (#14235) #### Description Along with `scraper/xscraper` this package is needed to enable OTel Profiling signal receivers, such as [receiver/pprofreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/receiver). #### Link to tracking issue Fixes # <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Florian Lehner <[email protected]> Signed-off-by: Florian Lehner <[email protected]> * [chore] [consumer/consumererror/xconsumererror] Add metadata yaml (#14182) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description This PR adds a metadata yaml file to the `consumer/consumererror/xconsumererror` component, allowing it to be referenced in changelogs. <!-- Issue number if applicable --> #### Link to tracking issue Allows #14152 to progress. <!--Describe what testing was performed and which tests were added.--> #### Testing Tried it first in that PR before opening as a separate PR. <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> Co-authored-by: Damien Mathieu <[email protected]> Co-authored-by: Pablo Baeyens <[email protected]> * [consumer/consumertest] Add ProfileCount() (#14251) <!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description In #14239 `(Profiles)ProfileCount() int` was introduced. Provide this function also in consumertests for other tests. <!-- Issue number if applicable --> #### Link to tracking issue Fixes # <!--Describe what testing was performed and which tests were added.--> #### Testing <!--Describe the documentation added.--> #### Documentation <!--Please delete paragraphs that you did not use before submitting.--> --------- Signed-off-by: Florian Lehner <[email protected]> * [mdatagen] Enable configurable attributes for metrics (#14281) Reopens [13900](https://github.com/open-telemetry/opentelemetry-collector/pull/13900) #### Description Modified `cmd/mdatagen` to allow for two new fields in the configuration yaml of metrics. These new configuration options will allow for a user to enable or disable attributes (i.e. reduce dimensionality of metrics being generated) from their collector configuration. The modified `MetricsBuilder` generated by `mdatagen` does not record disabled attributes and automatically re-aggregates metrics based on the resulting enabled set of attributes. There are four different aggregation strategies supported (`sum, average, min, and max`) which can be specified as a setting in `config.yaml`. The changes to the config.yaml are: ```yaml receiver: someMetricReceiver: ... metrics: ... attributes: [<list of attributes to include for metric at runtime>] # new aggregation_strategy: <sum|avg|min|max> # new ``` Attribute `requirement_level` takes president over this re-aggregation and any metric attribute with a `requirement_level` of `required` cannot be disabled in this way. For more information on `requirement_level` please see [13913](https://github.com/open-telemetry/opentelemetry-collector/pull/13913) The set of attributes provided by the user _must_ be contained in the set of attributes defined in the metadata.yaml, including an attribute which is not defined in the metrics `metadata` file will fail. Also, attempting to omit an attribute defined as `requirement_level: required` will cause the configuration to fail and the collector not to start. Omitting the field entirely will default to the defined set of metric attributes in the `metadata` file with a requirement level of `recommended` or above. Due to its large scope and foundational nature, a featuregate has been added for this change. This gate is represented by a new field in the `metadata.yaml`, `reaggregation_enabled: <bool>`. Setting this to `true` will enable the new codegen with spatial reaggregation features. <!-- Issue number if applicable --> #### Link to tracking issue Fixes [10726](https://github.com/open-telemetry/opentelemetry-collector/issues/10726) <!--Describe what testing was performed and which tests were added.--> #### Testing Generated tests have been updated to test new aggregation behavior. <!--Describe the documentation added.--> #### Documentation ran `make gogenerate` ran `make generate` <!--Please delete paragraphs that you did not use before submitting.--> * [chore] Reuse logStabilityLevel in extension factory (#14406) * [xextension] Add deprecated type alias support for extensions (#14405) Add support for deprecated component type aliases to extensions, following the implementation started in #14349 The new `xextension.WithDeprecatedTypeAlias` factory option allows extension authors to register deprecated type aliases using: ```go xextension.NewFactory( newType, createDefaultConfig, createExtension, component.StabilityLevelAlpha, xextension.WithDeprecatedTypeAlias(oldType), ) * Update All go.opentelemetry.io/collector packages to v0.143.0 (#14418) > **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/component/componenttest](https://redirect.github.com/open-telemetry/opentelemetry-collector) | `v0.0.0-00010101000000-000000000000` → `v0.143.0` |  |  | | [go.opentelemetry.io/collector/pipeline/xpipeline](https://redirect.github.com/open-telemetry/opentelemetry-collector) | `v0.141.0` → `v0.143.0` |  |  | | [go.opentelemetry.io/collector/scraper/scraperhelper](https://redirect.github.com/open-telemetry/opentelemetry-collector) | `v0.141.0` → `v0.143.0` |  |  | | [go.opentelemetry.io/collector/scraper/xscraper](https://redirect.github.com/open-telemetry/opentelemetry-collector) | `v0.0.0-20251128160438-7012862e3615` → `v0.143.0` |  |  | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>open-telemetry/opentelemetry-collector (go.opentelemetry.io/collector/component/componenttest)</summary> ### [`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 `recommended`. - `pdata/pprofile`: Remove deprecated `PutAttribute` helper method ([#​14082](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14082)) - `pdata/pprofile`: Remove deprecated `PutLocation` helper method ([#​14082](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14082)) ##### 💡 Enhancements 💡 - `all`: Add FIPS and non-FIPS implementations for allowed TLS curves ([#​13990](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13990)) - `cmd/builder`: Set CGO\_ENABLED=0 by default, add the `cgo_enabled` configuration to enable it. ([#​10028](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/10028)) - `pkg/config/configgrpc`: Errors of type status.Status returned from an Authenticator extension are being propagated as is to the upstream client. ([#​14005](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14005)) - `pkg/config/configoptional`: Adds new `configoptional.AddEnabledField` feature gate that allows users to explicitly disable a `configoptional.Optional` through a new `enabled` field. ([#​14021](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14021)) - `pkg/exporterhelper`: Replace usage of gogo proto for persistent queue metadata ([#​14079](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14079)) - `pkg/pdata`: Remove usage of gogo proto and generate the structs with pdatagen ([#​14078](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14078)) ##### 🧰 Bug fixes 🧰 - `exporter/debug`: add queue configuration ([#​14101](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14101)) <!-- previous-version --> ### [`v0.138.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1440v01380) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.137.0...v0.138.0) ##### 🛑 Breaking changes 🛑 - `all`: Remove deprecated type `TracesConfig` ([#​14036](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14036)) - `pkg/exporterhelper`: Add default values for `sending_queue::batch` configuration. ([#​13766](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13766)) Setting `sending_queue::batch` to an empty value now results in the same setup as the default batch processor configuration. - `all`: Add unified print-config command with mode support (redacted, unredacted), json support (unstable), and validation support. ([#​11775](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/11775)) This replaces the `print-initial-config` command. See the `service` package README for more details. The original command name `print-initial-config` remains an alias, to be retired with the feature flag. ##### 💡 Enhancements 💡 - `all`: Add `keep_alives_enabled` option to ServerConfig to control HTTP keep-alives for all components that create an HTTP server. ([#​13783](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13783)) - `pkg/otelcol`: Avoid unnecessary mutex in collector logs, replace by atomic pointer ([#​14008](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14008)) - `cmd/mdatagen`: Add lint/ordering validation for metadata.yaml ([#​13781](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13781)) - `pdata/xpdata`: Refactor JSON marshaling and unmarshaling to use `pcommon.Value` instead of `AnyValue`. ([#​13837](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13837)) - `pkg/exporterhelper`: Expose `MergeCtx` in exporterhelper's queue batch settings\` ([#​13742](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13742)) ##### 🧰 Bug fixes 🧰 - `all`: Fix zstd decoder data corruption due to decoder pooling for all components that create an HTTP server. ([#​13954](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13954)) - `pkg/otelcol`: Remove UB when taking internal logs and move them to the final zapcore.Core ([#​14009](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14009)) This can happen because of a race on accessing `logsTaken`. - `pkg/confmap`: Fix a potential race condition in confmap by closing the providers first. ([#​14018](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/14018)) <!-- previous-version --> ### [`v0.137.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1430v01370) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.136.0...v0.137.0) ##### 💡 Enhancements 💡 - `cmd/mdatagen`: Improve validation for resource attribute `enabled` field in metadata files ([#​12722](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/12722)) Resource attributes now require an explicit `enabled` field in metadata.yaml files, while regular attributes are prohibited from having this field. This improves validation and prevents configuration errors. - `all`: Changelog entries will now have their component field checked against a list of valid components. ([#​13924](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13924)) This will ensure a more standardized changelog format which makes it easier to parse. - `pkg/pdata`: Mark featuregate pdata.useCustomProtoEncoding as stable ([#​13883](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13883)) <!-- previous-version --> ### [`v0.136.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1420v01360) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.135.0...v0.136.0) ##### 💡 Enhancements 💡 - `xpdata`: Add Serialization and Deserialization of AnyValue ([#​12826](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/12826)) - `debugexporter`: add support for batching ([#​13791](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13791)) The default queue size is 1 - `configtls`: Add early validation for TLS server configurations to fail fast when certificates are missing instead of failing at runtime. ([#​13130](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13130), [#​13245](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13245)) - `mdatagen`: Expose stability level in generated metric documentation ([#​13748](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13748)) - `internal/tools`: Add support for modernize in Makefile ([#​13796](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13796)) ##### 🧰 Bug fixes 🧰 - `otelcol`: Fix a potential deadlock during collector shutdown. ([#​13740](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13740)) - `otlpexporter`: fix the validation of unix socket endpoints ([#​13826](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13826)) <!-- previous-version --> ### [`v0.135.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1410v01350) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.134.0...v0.135.0) ##### 💡 Enhancements 💡 - `exporterhelper`: Add new `exporter_queue_batch_send_size` and `exporter_queue_batch_send_size_bytes` metrics, showing the size of telemetry batches from the exporter. ([#​12894](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/12894)) <!-- previous-version --> ### [`v0.134.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1400v01340) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.133.0...v0.134.0) ##### 💡 Enhancements 💡 - `pdata`: Add custom grpc/encoding that replaces proto and calls into the custom marshal/unmarshal logic in pdata. ([#​13631](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13631)) This change should not affect other gRPC calls since it fallbacks to the default grpc/proto encoding if requests are not pdata/otlp requests. - `pdata`: Avoid copying the pcommon.Map when same origin ([#​13731](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13731)) This is a very large improvement if using OTTL with map functions since it will avoid a map copy. - `exporterhelper`: Respect `num_consumers` when batching and partitioning are enabled. ([#​13607](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13607)) ##### 🧰 Bug fixes 🧰 - `pdata`: Correctly parse OTLP payloads containing non-packed repeated primitive fields ([#​13727](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13727), [#​13730](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13730)) This bug prevented the Collector from ingesting most Histogram, ExponentialHistogram, and Profile payloads. <!-- previous-version --> ### [`v0.133.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1390v01330) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.132.0...v0.133.0) ##### 🛑 Breaking changes 🛑 - `all`: Increase minimum Go version to 1.24 ([#​13627](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13627)) ##### 💡 Enhancements 💡 - `otlphttpexporter`: Add `profiles_endpoint` configuration option to allow custom endpoint for profiles data export ([#​13504](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13504)) The `profiles_endpoint` configuration follows the same pattern as `traces_endpoint`, `metrics_endpoint`, and `logs_endpoint`. When specified, profiles data will be sent to the custom URL instead of the default `{endpoint}/v1development/profiles`. - `pdata`: Add support for local memory pooling for data objects. ([#​13678](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13678)) This is still an early experimental (alpha) feature. Do not recommended to be used production. To enable use "--featuregate=+pdata.useProtoPooling" - `pdata`: Optimize CopyTo messages to avoid any copy when same source and destination ([#​13680](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13680)) - `receiverhelper`: New feature flag to make receiverhelper distinguish internal vs. downstream errors using new `otelcol_receiver_failed_x` and `otelcol_receiver_requests` metrics ([#​12207](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/12207), [#​12802](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/12802)) This is a breaking change for the semantics of the otelcol\_receiver\_refused\_metric\_points, otelcol\_receiver\_refused\_log\_records and otelcol\_receiver\_refused\_spans metrics. These new metrics and semantics are enabled through the `receiverhelper.newReceiverMetrics` feature gate. - `debugexporter`: Add support for entity references in debug exporter output ([#​13324](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13324)) - `pdata`: Fix unnecessary allocation of a new state when adding new values to pcommon.Map ([#​13634](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13634)) - `service`: Implement refcounting for pipeline data owned memory. ([#​13631](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13631)) This feature is protected by `--featuregate=+pdata.useProtoPooling`. - `service`: Add a debug-level log message when a consumer returns an error. ([#​13357](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13357)) - `xpdata`: Optimize xpdata/context for persistent queue when only one value for key ([#​13636](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13636)) - `otlpreceiver`: Log the listening addresses of the receiver, rather than the configured endpoints. ([#​13654](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13654)) - `pdata`: Use the newly added proto marshaler/unmarshaler for the official proto Marshaler/Unmarshaler ([#​13637](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13637)) If any problems observed with this consider to disable the featuregate `--feature-gates=-pdata.useCustomProtoEncoding` <!-- cspell:ignore MLKEM mlkem --> - `configtls`: Enable X25519MLKEM768 as per draft-ietf-tls-ecdhe-mlkem ([#​13670](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13670)) ##### 🧰 Bug fixes 🧰 - `exporterhelper`: Prevent uncontrolled goroutines in batcher due to a incorrect worker pool behaviour. ([#​13689](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13689)) - `service`: Ensure the insecure configuration is accounted for when normalizing the endpoint. ([#​13691](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13691)) - `configoptional`: Allow validating nested types ([#​13579](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13579)) `configoptional.Optional` now implements `xconfmap.Validator` - `batchprocessor`: Fix UB in batch processor when trying to read bytes size after adding request to pipeline ([#​13698](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13698)) This bug only happens id detailed metrics are enabled and also an async (sending queue enabled) exporter that mutates data is configure. <!-- previous-version --> ### [`v0.132.0`](https://redirect.github.com/open-telemetry/opentelemetry-collector/blob/HEAD/CHANGELOG.md#v1380v01320) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-collector/compare/v0.131.0...v0.132.0) ##### 🛑 Breaking changes 🛑 - `componentstatus`: Change the signature of the componentstatus.NewEvent to accept multiple options. ([#​13210](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13210)) Changes the signature of the component.NewEvent to accept multiple EventBuilderOption, like the new WithAttributes constructor. ##### 🚩 Deprecations 🚩 - `service`: move service.noopTraceProvider feature gate to deprecated stage ([#​13492](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13492)) The functionality of the feature gate is available via configuration with the following telemetry settings: ``` service: telemetry: traces: level: none ``` - `mdatagen`: Remove the deletion of `generated_component_telemetry_test.go`. ([#​12067](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/12067)) This file used to be generated by mdatagen. Starting with 0.122.0, the code deletes that file. It is no longer necessary to delete the file, as code has had time to upgrade to mdatagen and delete the file. - `service`: The `telemetry.disableHighCardinalityMetrics` feature gate is deprecated ([#​13537](https://redirect.github.com/open-telemetry/opentelemetry-collector/issues/13537)) The feature gate is now deprecated s…
Description
In #14239
(Profiles)ProfileCount() intwas introduced. Provide this function also in consumertests for other tests.Link to tracking issue
Fixes #
Testing
Documentation