Skip to content

[exporter/loadbalancing] Add metrics routing_key=attributes support#45708

Merged
atoulme merged 54 commits intoopen-telemetry:mainfrom
ajimenez1503:feat/loadbalancer-metrics-attr-routing
Feb 25, 2026
Merged

[exporter/loadbalancing] Add metrics routing_key=attributes support#45708
atoulme merged 54 commits intoopen-telemetry:mainfrom
ajimenez1503:feat/loadbalancer-metrics-attr-routing

Conversation

@ajimenez1503
Copy link
Contributor

@ajimenez1503 ajimenez1503 commented Jan 28, 2026

Description

Adds routing_key: attributes support for metrics in the loadbalancing exporter. Metrics are split by composite keys built from resource/scope/datapoint attributes, matching the routing_attributes list.

Link to tracking issue

Fixes #45675

Testing

Added unit test for attribute routing.

Documentation

Updated exporter/loadbalancingexporter/README.md to describe metrics attribute routing.

@github-actions github-actions bot added the first-time contributor PRs made by new contributors label Jan 28, 2026
@github-actions
Copy link
Contributor

Welcome, contributor! Thank you for your contribution to opentelemetry-collector-contrib.

Important reminders:

A maintainer will review your pull request soon. Thank you for helping make OpenTelemetry better!

@linux-foundation-easycla
Copy link

linux-foundation-easycla bot commented Jan 28, 2026

CLA Signed

The committers listed above are authorized under a signed CLA.

  • ✅ login: ajimenez1503 / name: Antonio Jimenez (3982484)

@ajimenez1503 ajimenez1503 marked this pull request as ready for review January 29, 2026 10:58
@ajimenez1503 ajimenez1503 requested a review from a team as a code owner January 29, 2026 10:58
@github-actions github-actions bot requested a review from rlankfo January 29, 2026 10:59
@ajimenez1503
Copy link
Contributor Author

Hey,
Could someone please approve and run the CI workflows?
Thanks :)

ajimenez1503 and others added 17 commits February 3, 2026 09:13
#### Description

The prometheusreceiver tests are slow, e.g. see
https://github.com/open-telemetry/opentelemetry-collector-contrib/actions/runs/20877115761/job/59988159389

> ✓  . (4m26.753s) (coverage: 85.5% of statements)

Some debugging shows that this is due to the default 5 second intervals
used in the discovery manager (for broadcasting updates) and scrape
manager (for reloading discovery config).

I've introduced a new unexported "start" method that can be provided
options to override these in tests, and performed some light refactoring
to introduce "newTestReceiver" function which creates the receiver with
these options set to 50ms each.

This brings the total test time down from ~4.5mins to 8 seconds on my
machine.

#### Link to tracking issue

None

#### Testing

Yes

#### Documentation

No

---------

Co-authored-by: David Ashpole <dashpole@google.com>
…telemetry#45831)

<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue.
Ex. Adding a feature - Explain what this achieves.-->
#### Description

Run `make generate-schemas`, which was not run against a branch synced
with `main`.

Was introduced in
open-telemetry#45758

Signed-off-by: Paulo Dias <paulodias.gm@gmail.com>
…cedetection processor (open-telemetry#41919)

<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue.
Ex. Adding a feature - Explain what this achieves.-->
#### Description

This change adds support for detecting Google Compute Engine (GCE)
instance labels and including them as resource attributes in the same
way AWS EC2 and Azure detectors already do.

When running on GCE, the resource detection processor can now fetch
instance labels from the Compute API (if label key regex patterns are
configured) and attach them to the emitted resource under the
gce.labels.* namespace.

While implementing this, I considered splitting the GCE-specific
detection logic into its own dedicated package (similar to the existing
AWS EC2 detector structure) to improve maintainability. This could be
addressed in a follow-up PR if the team agrees it’s worthwhile.

<!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. -->
#### Link to tracking issue
Fixes open-telemetry#35859

<!--Describe what testing was performed and which tests were added.-->
#### Testing

I have updated the tests to cover this case, but if you would like
additional real evidence (logs, etc), please let me know.

<!--Describe the documentation added.-->
#### Documentation

Updated the README.md with the permissions needed for this feature work
and an example.

<!--Please delete paragraphs that you did not use before submitting.-->

---------

Signed-off-by: Paulo Dias <paulodias.gm@gmail.com>
…n-telemetry#45580)

Documents compatibility with external dependencies:
- Kubernetes versions

Part of open-telemetry#44586 (stable requirement: compatibility guarantees with
external dependencies)

---------

Signed-off-by: odubajDT <ondrej.dubaj@dynatrace.com>
Co-authored-by: Christos Markou <chrismarkou92@gmail.com>
…y#45826)

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.12` → `v4.26.1` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fshirou%2fgopsutil%2fv4/v4.26.1?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fshirou%2fgopsutil%2fv4/v4.25.12/v4.26.1?slim=true)
|

---

> [!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.26.1`](https://redirect.github.com/shirou/gopsutil/releases/tag/v4.26.1)

[Compare
Source](https://redirect.github.com/shirou/gopsutil/compare/v4.25.12...v4.26.1)

<!-- Release notes generated using configuration in .github/release.yml
at v4.26.1 -->

#### What's Changed

##### disk

- \[darwin]: convert CFString to Go string properly by
[@&open-telemetry#8203;uubulb](https://redirect.github.com/uubulb) in
[#&open-telemetry#8203;1992](https://redirect.github.com/shirou/gopsutil/pull/1992)

##### host

- \[host]\[darwin]: fix utmpx database parsing by
[@&open-telemetry#8203;uubulb](https://redirect.github.com/uubulb) in
[#&open-telemetry#8203;1990](https://redirect.github.com/shirou/gopsutil/pull/1990)
- feat: Add AIX platform support to common package with uptime and boot
time functions by [@&open-telemetry#8203;Dylan-M](https://redirect.github.com/Dylan-M)
in [#&open-telemetry#8203;1979](https://redirect.github.com/shirou/gopsutil/pull/1979)

##### mem

- feat(mem): add KernelStack field for ExVirtualMemory on linux by
[@&open-telemetry#8203;shirou](https://redirect.github.com/shirou) in
[#&open-telemetry#8203;1986](https://redirect.github.com/shirou/gopsutil/pull/1986)

##### process

- Fix windows open files with context by
[@&open-telemetry#8203;ebriney](https://redirect.github.com/ebriney) in
[#&open-telemetry#8203;1991](https://redirect.github.com/shirou/gopsutil/pull/1991)
- Return an error on reading empty proc pid stat file by
[@&open-telemetry#8203;pgimalac](https://redirect.github.com/pgimalac) in
[#&open-telemetry#8203;1995](https://redirect.github.com/shirou/gopsutil/pull/1995)
- \[process]\[posix]: fix getTerminalMap path construction bug by
[@&open-telemetry#8203;shirou](https://redirect.github.com/shirou) in
[#&open-telemetry#8203;1994](https://redirect.github.com/shirou/gopsutil/pull/1994)

##### sensor

- fix(sensors): kelvin to Celsius by
[@&open-telemetry#8203;Aoang](https://redirect.github.com/Aoang) in
[#&open-telemetry#8203;1997](https://redirect.github.com/shirou/gopsutil/pull/1997)

#### New Contributors

- [@&open-telemetry#8203;ebriney](https://redirect.github.com/ebriney) made their
first contribution in
[#&open-telemetry#8203;1991](https://redirect.github.com/shirou/gopsutil/pull/1991)
- [@&open-telemetry#8203;Aoang](https://redirect.github.com/Aoang) made their first
contribution in
[#&open-telemetry#8203;1997](https://redirect.github.com/shirou/gopsutil/pull/1997)

**Full Changelog**:
<shirou/gopsutil@v4.25.12...v4.26.1>

</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-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=-->

---------

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: Christos Markou <chrismarkou92@gmail.com>
… when on_error is set to quiet mode (open-telemetry#45705)

<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue.
Ex. Adding a feature - Explain what this achieves.-->
#### Description

Fix syslog parser operator logging errors at ERROR level when `on_error`
is set to quiet mode (`send_quiet` or `drop_quiet`)

<!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. -->
#### Link to tracking issue
Relates to open-telemetry#42646

---------

Signed-off-by: Paulo Dias <paulodias.gm@gmail.com>
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| golang | stage | digest | `ce63a16` → `0c87ea6` |
| golang | final | digest | `ce63a16` → `0c87ea6` |

---

> [!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 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-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
…pen-telemetry#45817)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[github.com/DataDog/datadog-go/v5](https://redirect.github.com/DataDog/datadog-go)
| `v5.8.2` → `v5.8.3` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fDataDog%2fdatadog-go%2fv5/v5.8.3?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fDataDog%2fdatadog-go%2fv5/v5.8.2/v5.8.3?slim=true)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>DataDog/datadog-go (github.com/DataDog/datadog-go/v5)</summary>

###
[`v5.8.3`](https://redirect.github.com/DataDog/datadog-go/releases/tag/v5.8.3)

[Compare
Source](https://redirect.github.com/DataDog/datadog-go/compare/v5.8.2...v5.8.3)

- \[IMPROVEMENT] Shard aggregator lock. See
\[<https://redirect.github.com/DataDog/datadog-go/pull/351][>], thanks
\[[@&open-telemetry#8203;opsengine](https://redirect.github.com/opsengine)]\[].
- \[IMPROVEMENT] Fix race condition in statsd external\_env
initialization. See
\[<https://redirect.github.com/DataDog/datadog-go/pull/352][>], thanks
\[[@&open-telemetry#8203;jprobinson](https://redirect.github.com/jprobinson)]\[].

See the
[CHANGELOG](https://redirect.github.com/DataDog/datadog-go/blob/master/CHANGELOG.md)
for the details on previous releases.

</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-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=-->

---------

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>
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [github.com/SAP/go-hdb](https://redirect.github.com/SAP/go-hdb) |
`v1.14.18` → `v1.14.19` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fSAP%2fgo-hdb/v1.14.19?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fSAP%2fgo-hdb/v1.14.18/v1.14.19?slim=true)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>SAP/go-hdb (github.com/SAP/go-hdb)</summary>

###
[`v1.14.19`](https://redirect.github.com/SAP/go-hdb/blob/HEAD/RELEASENOTES.md#v11419)

[Compare
Source](https://redirect.github.com/SAP/go-hdb/compare/v1.14.18...v1.14.19)

- changed default dialer preference to "tcp4" until HANA cloud would
fully support IPv6 (see
[#&open-telemetry#8203;157](https://redirect.github.com/SAP/go-hdb/issues/157))

</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-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=-->

---------

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: Christos Markou <chrismarkou92@gmail.com>
…45818)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[github.com/golang-jwt/jwt/v5](https://redirect.github.com/golang-jwt/jwt)
| `v5.3.0` → `v5.3.1` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgolang-jwt%2fjwt%2fv5/v5.3.1?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fgolang-jwt%2fjwt%2fv5/v5.3.0/v5.3.1?slim=true)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>golang-jwt/jwt (github.com/golang-jwt/jwt/v5)</summary>

###
[`v5.3.1`](https://redirect.github.com/golang-jwt/jwt/releases/tag/v5.3.1)

[Compare
Source](https://redirect.github.com/golang-jwt/jwt/compare/v5.3.0...v5.3.1)

<!-- Release notes generated using configuration in .github/release.yml
at main -->

#### What's Changed

##### 🔐 Features

- Add spellcheck Github action to catch common spelling mistakes by
[@&open-telemetry#8203;equalsgibson](https://redirect.github.com/equalsgibson) in
[#&open-telemetry#8203;458](https://redirect.github.com/golang-jwt/jwt/pull/458)
- Add `WithNotBeforeRequired` parser option and add test coverage by
[@&open-telemetry#8203;equalsgibson](https://redirect.github.com/equalsgibson) in
[#&open-telemetry#8203;456](https://redirect.github.com/golang-jwt/jwt/pull/456)
- Update godoc example func to properly refer to `NewWithClaims()` by
[@&open-telemetry#8203;equalsgibson](https://redirect.github.com/equalsgibson) in
[#&open-telemetry#8203;459](https://redirect.github.com/golang-jwt/jwt/pull/459)
- Update github workflows by
[@&open-telemetry#8203;mfridman](https://redirect.github.com/mfridman) in
[#&open-telemetry#8203;462](https://redirect.github.com/golang-jwt/jwt/pull/462)
- Additional test for CustomClaims that validates unmarshalling
behaviour by
[@&open-telemetry#8203;equalsgibson](https://redirect.github.com/equalsgibson) in
[#&open-telemetry#8203;457](https://redirect.github.com/golang-jwt/jwt/pull/457)
- Fix early file close in jwt cli by
[@&open-telemetry#8203;mfridman](https://redirect.github.com/mfridman) in
[#&open-telemetry#8203;472](https://redirect.github.com/golang-jwt/jwt/pull/472)
- Add TPM signature reference by
[@&open-telemetry#8203;salrashid123](https://redirect.github.com/salrashid123) in
[#&open-telemetry#8203;473](https://redirect.github.com/golang-jwt/jwt/pull/473)
- Remove misleading ParserOptions documentation in
[#&open-telemetry#8203;484](https://redirect.github.com/golang-jwt/jwt/pull/484)
- Save signature to Token struct after successful signing by
[@&open-telemetry#8203;EgorSheff](https://redirect.github.com/EgorSheff) in
[#&open-telemetry#8203;417](https://redirect.github.com/golang-jwt/jwt/pull/417)
- Set token.Signature in `ParseUnverified` by
[@&open-telemetry#8203;slickwilli](https://redirect.github.com/slickwilli) in
[#&open-telemetry#8203;414](https://redirect.github.com/golang-jwt/jwt/pull/414)

##### 👒 Dependencies

- Bump crate-ci/typos from 1.34.0 to 1.35.3 by
[@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&open-telemetry#8203;461](https://redirect.github.com/golang-jwt/jwt/pull/461)
- Bump crate-ci/typos from 1.35.4 to 1.36.2 by
[@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&open-telemetry#8203;470](https://redirect.github.com/golang-jwt/jwt/pull/470)
- Bump github/codeql-action from 3 to 4 by
[@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&open-telemetry#8203;478](https://redirect.github.com/golang-jwt/jwt/pull/478)
- Bump crate-ci/typos from 1.36.2 to 1.39.0 by
[@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&open-telemetry#8203;480](https://redirect.github.com/golang-jwt/jwt/pull/480)
- Bump golangci/golangci-lint-action from 8 to 9 by
[@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&open-telemetry#8203;481](https://redirect.github.com/golang-jwt/jwt/pull/481)
- Bump actions/setup-go from 5 to 6 by
[@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&open-telemetry#8203;469](https://redirect.github.com/golang-jwt/jwt/pull/469)
- Bump crate-ci/typos from 1.39.0 to 1.40.0 by
[@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&open-telemetry#8203;488](https://redirect.github.com/golang-jwt/jwt/pull/488)
- Bump actions/checkout from 5 to 6 by
[@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&open-telemetry#8203;487](https://redirect.github.com/golang-jwt/jwt/pull/487)
- Bump crate-ci/typos from 1.40.0 to 1.41.0 by
[@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&open-telemetry#8203;490](https://redirect.github.com/golang-jwt/jwt/pull/490)
- Bump crate-ci/typos from 1.41.0 to 1.42.1 by
[@&open-telemetry#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&open-telemetry#8203;492](https://redirect.github.com/golang-jwt/jwt/pull/492)

#### New Contributors

- [@&open-telemetry#8203;equalsgibson](https://redirect.github.com/equalsgibson) made
their first contribution in
[#&open-telemetry#8203;458](https://redirect.github.com/golang-jwt/jwt/pull/458)
- [@&open-telemetry#8203;salrashid123](https://redirect.github.com/salrashid123) made
their first contribution in
[#&open-telemetry#8203;473](https://redirect.github.com/golang-jwt/jwt/pull/473)
- [@&open-telemetry#8203;EgorSheff](https://redirect.github.com/EgorSheff) made their
first contribution in
[#&open-telemetry#8203;417](https://redirect.github.com/golang-jwt/jwt/pull/417)
- [@&open-telemetry#8203;slickwilli](https://redirect.github.com/slickwilli) made
their first contribution in
[#&open-telemetry#8203;414](https://redirect.github.com/golang-jwt/jwt/pull/414)

**Full Changelog**:
<golang-jwt/jwt@v5.3.0...v5.3.1>

</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-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=-->

---------

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: Christos Markou <chrismarkou92@gmail.com>
The following commands were run to prepare this release:
- make chlog-update VERSION=v0.145.0
- sed -i.bak s/0[.]144[.]0/0.145.0/g versions.yaml
- make multimod-prerelease
- make multimod-sync

---------

Signed-off-by: otelbot <197425009+otelbot@users.noreply.github.com>
Co-authored-by: otelbot <197425009+otelbot@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/aws/aws-sdk-go-v2/feature/s3/manager](https://redirect.github.com/aws/aws-sdk-go-v2)
| `v1.21.0` → `v1.21.1` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2faws%2faws-sdk-go-v2%2ffeature%2fs3%2fmanager/v1.21.1?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2faws%2faws-sdk-go-v2%2ffeature%2fs3%2fmanager/v1.21.0/v1.21.1?slim=true)
|
|
[github.com/aws/aws-sdk-go-v2/service/ec2](https://redirect.github.com/aws/aws-sdk-go-v2)
| `v1.283.0` → `v1.285.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2faws%2faws-sdk-go-v2%2fservice%2fec2/v1.285.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2faws%2faws-sdk-go-v2%2fservice%2fec2/v1.283.0/v1.285.0?slim=true)
|
|
[github.com/aws/aws-sdk-go-v2/service/s3](https://redirect.github.com/aws/aws-sdk-go-v2)
| `v1.95.1` → `v1.96.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2faws%2faws-sdk-go-v2%2fservice%2fs3/v1.96.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2faws%2faws-sdk-go-v2%2fservice%2fs3/v1.95.1/v1.96.0?slim=true)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>aws/aws-sdk-go-v2
(github.com/aws/aws-sdk-go-v2/feature/s3/manager)</summary>

###
[`v1.21.1`](https://redirect.github.com/aws/aws-sdk-go-v2/blob/HEAD/CHANGELOG.md#Release-2024-10-23)

#### Module Highlights

- `github.com/aws/aws-sdk-go-v2/service/bedrock`:
[v1.21.1](service/bedrock/CHANGELOG.md#v1211-2024-10-23)
  - **Documentation**: Doc updates for supporting converse
- `github.com/aws/aws-sdk-go-v2/service/connect`:
[v1.114.0](service/connect/CHANGELOG.md#v11140-2024-10-23)
- **Feature**: Amazon Connect Service Feature: Add support to start
screen sharing for a web calling contact.
- `github.com/aws/aws-sdk-go-v2/service/ec2`:
[v1.185.0](service/ec2/CHANGELOG.md#v11850-2024-10-23)
- **Feature**: Amazon EC2 X8g, C8g and M8g instances are powered by AWS
Graviton4 processors. X8g provide the lowest cost per GiB of memory
among Graviton4 instances. C8g provide the best price performance for
compute-intensive workloads. M8g provide the best price performance in
for general purpose workloads.
- `github.com/aws/aws-sdk-go-v2/service/mwaa`:
[v1.32.0](service/mwaa/CHANGELOG.md#v1320-2024-10-23)
- **Feature**: Introducing InvokeRestApi which allows users to invoke
the Apache Airflow REST API on the webserver with the specified inputs.
- `github.com/aws/aws-sdk-go-v2/service/paymentcryptography`:
[v1.15.0](service/paymentcryptography/CHANGELOG.md#v1150-2024-10-23)
  - **Feature**: Add support for ECC P-256 and P-384 Keys.
- `github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata`:
[v1.16.0](service/paymentcryptographydata/CHANGELOG.md#v1160-2024-10-23)
  - **Feature**: Add ECDH support on PIN operations.

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

👻 **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-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=-->

---------

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>
…45815)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[cloud.google.com/go/storage](https://redirect.github.com/googleapis/google-cloud-go)
| `v1.59.1` → `v1.59.2` |
![age](https://developer.mend.io/api/mc/badges/age/go/cloud.google.com%2fgo%2fstorage/v1.59.2?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/cloud.google.com%2fgo%2fstorage/v1.59.1/v1.59.2?slim=true)
|

---

> [!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-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=-->

---------

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>
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| golang | stage | digest | `0c87ea6` → `06d1251` |
| golang | final | digest | `0c87ea6` → `06d1251` |

---

> [!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 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-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
…emetry#45833)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[github.com/snowflakedb/gosnowflake](https://redirect.github.com/snowflakedb/gosnowflake)
| `v1.18.1` → `v1.19.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fsnowflakedb%2fgosnowflake/v1.19.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fsnowflakedb%2fgosnowflake/v1.18.1/v1.19.0?slim=true)
|

---

> [!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-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=-->

---------

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>
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/otel](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.1-0.20260115134311-f809f7d71e2d` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel/v1.39.1-0.20260115134311-f809f7d71e2d/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v0.15.0` → `v0.16.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlplog%2fotlploggrpc/v0.16.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlplog%2fotlploggrpc/v0.15.0/v0.16.0?slim=true)
|
|
[go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v0.15.0` → `v0.16.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlplog%2fotlploghttp/v0.16.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlplog%2fotlploghttp/v0.15.0/v0.16.0?slim=true)
|
|
[go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlpmetric%2fotlpmetricgrpc/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlpmetric%2fotlpmetricgrpc/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlpmetric%2fotlpmetrichttp/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlpmetric%2fotlpmetrichttp/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/exporters/otlp/otlptrace](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracegrpc/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracegrpc/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracehttp/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracehttp/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/exporters/prometheus](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v0.61.0` → `v0.62.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fprometheus/v0.62.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fprometheus/v0.61.0/v0.62.0?slim=true)
|
|
[go.opentelemetry.io/otel/exporters/stdout/stdoutmetric](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fstdout%2fstdoutmetric/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fstdout%2fstdoutmetric/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/log](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v0.15.0` → `v0.16.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2flog/v0.16.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2flog/v0.15.0/v0.16.0?slim=true)
|
|
[go.opentelemetry.io/otel/metric](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fmetric/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fmetric/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/metric](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.1-0.20260115134311-f809f7d71e2d` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fmetric/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fmetric/v1.39.1-0.20260115134311-f809f7d71e2d/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/sdk](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fsdk/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fsdk/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/sdk/log](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v0.15.0` → `v0.16.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fsdk%2flog/v0.16.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fsdk%2flog/v0.15.0/v0.16.0?slim=true)
|
|
[go.opentelemetry.io/otel/sdk/log/logtest](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v0.15.0` → `v0.16.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fsdk%2flog%2flogtest/v0.16.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fsdk%2flog%2flogtest/v0.15.0/v0.16.0?slim=true)
|
|
[go.opentelemetry.io/otel/sdk/metric](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fsdk%2fmetric/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fsdk%2fmetric/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/sdk/metric](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.1-0.20260115134311-f809f7d71e2d` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fsdk%2fmetric/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fsdk%2fmetric/v1.39.1-0.20260115134311-f809f7d71e2d/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/trace](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.0` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2ftrace/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2ftrace/v1.39.0/v1.40.0?slim=true)
|
|
[go.opentelemetry.io/otel/trace](https://redirect.github.com/open-telemetry/opentelemetry-go)
| `v1.39.1-0.20260115134311-f809f7d71e2d` → `v1.40.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2ftrace/v1.40.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2ftrace/v1.39.1-0.20260115134311-f809f7d71e2d/v1.40.0?slim=true)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>open-telemetry/opentelemetry-go
(go.opentelemetry.io/otel)</summary>

###
[`v1.40.0`](https://redirect.github.com/open-telemetry/opentelemetry-go/compare/v1.39.0...v1.40.0)

[Compare
Source](https://redirect.github.com/open-telemetry/opentelemetry-go/compare/v1.39.0...v1.40.0)

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

👻 **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-contrib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4yIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGVib3QiXX0=-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com>
@MovieStoreGuy
Copy link
Contributor

I've run the pipelines for you, and also removed the additional reviewers added by mistake.

Copy link
Member

@rlankfo rlankfo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this PR. Looks good to me overall. I left a couple of comments but the issues are relatively minor although would like your input there.

pendingResourceAttrs := make([]string, 0, len(attrs))
for _, attr := range attrs {
if val, ok := resourceAttrs.Get(attr); ok {
baseResourceKeyBuilder.WriteString(val.Str())
Copy link
Member

@rlankfo rlankfo Feb 13, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could consider adding a delimiter here when the strings are concatenated. If routing attributes are ["a", "b"] with values a="foo", b="bar", the key is "foobar". But a="foob", b="ar" also produces "foobar". These should deterministically hash to the same endpoint every time though, so the routing is still consistent even if there's incorrect grouping. Looks like the trace implementation behaves the same way though so it's probably not an issue, although could result in suboptimal load distribution.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, iiuc, I believe val.Str() will return "" for non-string attribute values. A routing key with int values that differ would always get the same routing key for example. Again, I believe this is also consistent with the trace implementation though.

Copy link
Contributor Author

@ajimenez1503 ajimenez1503 Feb 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the careful review!

I am interested on working on those issues.
Thanks :)

@ajimenez1503
Copy link
Contributor Author

@open-telemetry/collector-contrib-approvers anything else here? Could you please merge it?
Thanks :)

// For traces, attributes can come from resource, scope, or span, plus the pseudo attributes "span.kind" and
// "span.name".
// For metrics, attributes can come from resource, scope, or datapoint attributes.
RoutingAttributes []string `mapstructure:"routing_attributes"`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally looks very good, one additional point: I would vote to add a validation function for the configuration to mitigate routing to the same backend:

// Validate checks if the exporter configuration is valid
func (c *Config) Validate() error {
	// Validate that routing_attributes is specified when using attribute routing
	if c.RoutingKey == attrRoutingStr && len(c.RoutingAttributes) == 0 {
		return fmt.Errorf("routing_attributes must be specified when routing_key is '%s'", attrRoutingStr)
	}

	// Warn if routing_attributes is specified but not using attribute routing
	// This is not an error, but the attributes will be ignored
	if c.RoutingKey != attrRoutingStr && c.RoutingKey != "" && len(c.RoutingAttributes) > 0 {
		return fmt.Errorf("routing_attributes is specified but routing_key is '%s' (expected '%s'); the routing_attributes will be ignored", c.RoutingKey, attrRoutingStr)
	}

	return nil
}

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank your for the feedback. Quite welcome ;)

@ajimenez1503
Copy link
Contributor Author

@open-telemetry/collector-contrib-approvers Could you please merge it?
Thanks :)

@atoulme
Copy link
Contributor

atoulme commented Feb 24, 2026

Approved by codeowner, will merge once CI passes.

@otelbot
Copy link
Contributor

otelbot bot commented Feb 25, 2026

Thank you for your contribution @ajimenez1503! 🎉 We would like to hear from you about your experience contributing to OpenTelemetry by taking a few minutes to fill out this survey. If you are getting started contributing, you can also join the CNCF Slack channel #opentelemetry-new-contributors to ask for guidance and get help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

exporter/elasticsearch exporter/loadbalancing first-time contributor PRs made by new contributors internal/core ready to merge Code review completed; ready to merge by maintainers

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[exporter/loadbalancing]: support routing_key=attributes for metrics