1
0
mirror of https://github.com/open-telemetry/opentelemetry-go.git synced 2026-06-19 21:45:50 +02:00

1463 Commits

Author SHA1 Message Date
renovate[bot] b8515adc43 fix(deps): update googleapis to 87f3d3e (#8483)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[google.golang.org/genproto/googleapis/api](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `62b3387` → `87f3d3e` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `62b3387` → `87f3d3e` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| require | digest | `62b3387` → `87f3d3e` |

---

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

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

🔕 **Ignore**: Close this PR and you won't be reminded about 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-18 14:14:42 -07:00
Mikhail Mazurskiy dc7c0bf64d tracetransform code cleanup (#8457) 2026-06-17 17:23:45 +02:00
renovate[bot] df5d2fe937 fix(deps): update module github.com/prometheus/common to v0.69.0 (#8472) 2026-06-17 13:28:54 +02:00
Robert Pająk dcfc16cebd exporters: support MAP attributes (#8453)
Fixes https://github.com/open-telemetry/opentelemetry-go/issues/8163

Add end-to-end exporter handling for `attribute.SLICE` in the remaining
paths that still treated it as invalid or relied on fallback formatting.

Changes:

- encode `attribute.MAP` as OTLP `AnyValue_AnyValue_KvlistValue` for
trace, log, and metric transforms
- serialize Zipkin `MAP` attributes using the non-OTLP AnyValue string
representation
2026-06-16 21:25:29 +02:00
renovate[bot] 6e2b9214f0 fix(deps): update googleapis to 62b3387 (#8463)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[google.golang.org/genproto/googleapis/api](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `7ab31c2` → `62b3387` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `7ab31c2` → `62b3387` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| require | digest | `7ab31c2` → `62b3387` |

---

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

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

🔕 **Ignore**: Close this PR and you won't be reminded about 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-15 15:54:30 -07:00
renovate[bot] fbf2027dc8 chore(deps): update golang.org/x to v0.56.0 (#8448) 2026-06-11 19:00:00 +02:00
renovate[bot] a3de6477db fix(deps): update googleapis to 7ab31c2 (#8447) 2026-06-11 08:44:44 +02:00
David Ashpole f6dd2c3f91 prometheus: avoid preallocating scope attributes when disabled (#8404)
Fixes #8401

A regression test was too verbose + brittle to be useful.

---------

Co-authored-by: Robert Pająk <pellared@hotmail.com>
2026-06-10 07:49:54 -07:00
Abhijeet Prasad 0c2e50c2c0 fix(otlphttp): support retry-after HTTP-date (#8417)
Parse Retry-After header values as HTTP dates in addition to delay
seconds when retrying OTLP HTTP exports, matching RFC 7231. See
https://datatracker.ietf.org/doc/html/rfc7231#section-7.1.3.

This is a follow up to
https://github.com/open-telemetry/opentelemetry-go/pull/8383.
2026-06-09 20:50:58 +02:00
Robert Pająk 3a1412d2b3 sdk/trace: avoid logging exporter endpoint configuration (#8438)
Prevent internal trace exporter logging from including endpoint
configuration.

`MarshalLog` now keeps the existing log shape where practical, but logs
exporter/client type strings instead of recursively serializing exporter
and client internals. OTLP trace HTTP/gRPC and Zipkin exporter log
payloads no longer include endpoint URLs, embedded credentials, query
tokens, internal hostnames, or insecure transport configuration.

## Changes

- Stop recursive logging of trace exporter/client config from
`sdk/trace` span processors and `otlptrace.Exporter`.
- Remove endpoint/URL fields from OTLP trace HTTP/gRPC and Zipkin
`MarshalLog` output.
- Add regression coverage for credential-bearing endpoints not appearing
in internal log output.
2026-06-09 19:09:30 +02:00
ian 1802033e48 fix(stdouttrace/observ): record error.type on opDuration when exportedSpans is disabled (#8432)
When `ExportOp.End` is called with a non-nil error and `exportedSpans`
metric is disabled but `opDuration` is enabled, the `error.type`
attribute is not included in the duration histogram record.

---------

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2026-06-09 08:07:49 -07:00
renovate[bot] 3455c6f1a6 chore(deps): update golang.org/x (#8439) 2026-06-09 13:24:17 +02:00
renovate[bot] 989566b201 fix(deps): update googleapis to 4308a22 (#8440) 2026-06-09 13:06:41 +02:00
renovate[bot] 58f767a448 fix(deps): update golang.org/x (#8437) 2026-06-08 16:25:23 +02:00
renovate[bot] ed3762249d fix(deps): update module github.com/prometheus/common to v0.68.1 (#8420)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[github.com/prometheus/common](https://redirect.github.com/prometheus/common)
| `v0.68.0` → `v0.68.1` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fprometheus%2fcommon/v0.68.1?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fprometheus%2fcommon/v0.68.0/v0.68.1?slim=true)
|

---

### Release Notes

<details>
<summary>prometheus/common (github.com/prometheus/common)</summary>

###
[`v0.68.1`](https://redirect.github.com/prometheus/common/releases/tag/v0.68.1)

[Compare
Source](https://redirect.github.com/prometheus/common/compare/v0.68.0...v0.68.1)

#### What's Changed

- build(deps): bump golang.org/x/net from 0.52.0 to 0.53.0 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;903](https://redirect.github.com/prometheus/common/pull/903)
- build(deps): bump golang.org/x/net from 0.53.0 to 0.55.0 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;914](https://redirect.github.com/prometheus/common/pull/914)
- Synchronize common files from prometheus/prometheus by
[@&#8203;prombot](https://redirect.github.com/prombot) in
[#&#8203;915](https://redirect.github.com/prometheus/common/pull/915)

**Full Changelog**:
<https://github.com/prometheus/common/compare/v0.68.0...v0.68.1>

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

🔕 **Ignore**: Close this PR and you won't be reminded about 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-04 12:02:25 -07:00
renovate[bot] 3e89d82e78 fix(deps): update module github.com/prometheus/common to v0.68.0 (#8395)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[github.com/prometheus/common](https://redirect.github.com/prometheus/common)
| `v0.67.5` → `v0.68.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fprometheus%2fcommon/v0.68.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fprometheus%2fcommon/v0.67.5/v0.68.0?slim=true)
|

---

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

---

### Release Notes

<details>
<summary>prometheus/common (github.com/prometheus/common)</summary>

###
[`v0.68.0`](https://redirect.github.com/prometheus/common/releases/tag/v0.68.0)

[Compare
Source](https://redirect.github.com/prometheus/common/compare/v0.67.5...v0.68.0)

##### What's Changed

- Synchronize common files from prometheus/prometheus by
[@&#8203;prombot](https://redirect.github.com/prombot) in
[#&#8203;873](https://redirect.github.com/prometheus/common/pull/873)
- Synchronize common files from prometheus/prometheus by
[@&#8203;prombot](https://redirect.github.com/prombot) in
[#&#8203;874](https://redirect.github.com/prometheus/common/pull/874)
- build(deps): bump github.com/golang-jwt/jwt/v5 from 5.3.0 to 5.3.1 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;879](https://redirect.github.com/prometheus/common/pull/879)
- build(deps): bump golang.org/x/net from 0.48.0 to 0.49.0 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;878](https://redirect.github.com/prometheus/common/pull/878)
- Synchronize common files from prometheus/prometheus by
[@&#8203;prombot](https://redirect.github.com/prombot) in
[#&#8203;875](https://redirect.github.com/prometheus/common/pull/875)
- Synchronize common files from prometheus/prometheus by
[@&#8203;prombot](https://redirect.github.com/prombot) in
[#&#8203;880](https://redirect.github.com/prometheus/common/pull/880)
- Remove logic adding unit to metrics name by
[@&#8203;vesari](https://redirect.github.com/vesari) in
[#&#8203;877](https://redirect.github.com/prometheus/common/pull/877)
- Synchronize common files from prometheus/prometheus by
[@&#8203;prombot](https://redirect.github.com/prombot) in
[#&#8203;881](https://redirect.github.com/prometheus/common/pull/881)
- Update for Go 1.26 by
[@&#8203;SuperQ](https://redirect.github.com/SuperQ) in
[#&#8203;883](https://redirect.github.com/prometheus/common/pull/883)
- build(deps): bump golang.org/x/net from 0.49.0 to 0.51.0 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;882](https://redirect.github.com/prometheus/common/pull/882)
- version: Add a slog helper by
[@&#8203;SuperQ](https://redirect.github.com/SuperQ) in
[#&#8203;886](https://redirect.github.com/prometheus/common/pull/886)
- Remove Arthur from maintainers list by
[@&#8203;ArthurSens](https://redirect.github.com/ArthurSens) in
[#&#8203;885](https://redirect.github.com/prometheus/common/pull/885)
- Synchronize common files from prometheus/prometheus by
[@&#8203;prombot](https://redirect.github.com/prombot) in
[#&#8203;895](https://redirect.github.com/prometheus/common/pull/895)
- Synchronize common files from prometheus/prometheus by
[@&#8203;prombot](https://redirect.github.com/prombot) in
[#&#8203;896](https://redirect.github.com/prometheus/common/pull/896)
- config: change NewOAuth2RoundTripper to accept variadic
HTTPClientOption by
[@&#8203;alliasgher](https://redirect.github.com/alliasgher) in
[#&#8203;898](https://redirect.github.com/prometheus/common/pull/898)
- config: guard against nil oauth2 credential in RoundTrip by
[@&#8203;alliasgher](https://redirect.github.com/alliasgher) in
[#&#8203;897](https://redirect.github.com/prometheus/common/pull/897)
- build(deps): bump golang.org/x/net from 0.51.0 to 0.52.0 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;890](https://redirect.github.com/prometheus/common/pull/890)
- build(deps): bump go.yaml.in/yaml/v2 from 2.4.3 to 2.4.4 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;891](https://redirect.github.com/prometheus/common/pull/891)
- build(deps): bump golang.org/x/oauth2 from 0.34.0 to 0.36.0 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;892](https://redirect.github.com/prometheus/common/pull/892)
- Move interface assertions to a test file by
[@&#8203;msiegen](https://redirect.github.com/msiegen) in
[#&#8203;839](https://redirect.github.com/prometheus/common/pull/839)
- fix(http\_config): fix client cert rotation when no CA is configured
by [@&#8203;machine424](https://redirect.github.com/machine424) in
[#&#8203;908](https://redirect.github.com/prometheus/common/pull/908)
- Remove CircleCI by
[@&#8203;ArthurSens](https://redirect.github.com/ArthurSens) in
[#&#8203;910](https://redirect.github.com/prometheus/common/pull/910)
- Fix: apply DialContextFunc to OAuth2 token-fetch transport by
[@&#8203;yuri-tceretian](https://redirect.github.com/yuri-tceretian) in
[#&#8203;911](https://redirect.github.com/prometheus/common/pull/911)

##### New Contributors

- [@&#8203;alliasgher](https://redirect.github.com/alliasgher) made
their first contribution in
[#&#8203;898](https://redirect.github.com/prometheus/common/pull/898)
- [@&#8203;msiegen](https://redirect.github.com/msiegen) made their
first contribution in
[#&#8203;839](https://redirect.github.com/prometheus/common/pull/839)
- [@&#8203;machine424](https://redirect.github.com/machine424) made
their first contribution in
[#&#8203;908](https://redirect.github.com/prometheus/common/pull/908)
- [@&#8203;yuri-tceretian](https://redirect.github.com/yuri-tceretian)
made their first contribution in
[#&#8203;911](https://redirect.github.com/prometheus/common/pull/911)

**Full Changelog**:
<https://github.com/prometheus/common/compare/v0.67.5...v0.68.0>

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

🔕 **Ignore**: Close this PR and you won't be reminded about 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-01 13:58:36 -07:00
Abhijeet Prasad f67594caf7 fix(otlphttp): honor retry-after seconds (#8383)
This PR updates the log, metric, and trace exporters to read the HTTP
`Retry-After` header as seconds when retrying OTLP HTTP exports.
Previously, these exporters converted the parsed integer directly to
`time.Duration`, so values such as Retry-After: 10 were honored as 10ns
instead of 10s. This means that no otel go client has respected
`Retry-After`, which makes it not spec compliant as per
https://opentelemetry.io/docs/specs/otlp/#otlphttp-throttling

> If the server receives more requests than the client is allowed or the
server is overloaded, the server SHOULD respond with HTTP 429 Too Many
Requests or HTTP 503 Service Unavailable and MAY include
[“Retry-After”](https://tools.ietf.org/html/rfc7231#section-7.1.3)
header with a recommended time interval in seconds to wait before
retrying.
>
> The client SHOULD honour the waiting interval specified in the
“Retry-After” header if it is present. If the client receives a
retryable error code (see [table
above](https://opentelemetry.io/docs/specs/otlp/#retryable-response-codes))
and the “Retry-After” header is not present in the response, then the
client SHOULD implement an exponential backoff strategy between retries.

This problem has existed since the start of all the exporter usage.
2026-06-01 22:10:41 +02:00
Robert Pająk b62d92831b Release 1.44.0 (#8376)
### Added

- Add `ByteSlice` and `ByteSliceValue` functions for new `BYTESLICE`
attribute type in `go.opentelemetry.io/otel/attribute`. (#7948)
- Apply attribute value limit to the `KindBytes` attribute type in
`go.opentelemetry.io/otel/sdk/log`. (#7990)
- Apply attribute value limit to the `BYTESLICE` attribute type in
`go.opentelemetry.io/otel/sdk/trace`. (#7990)
- Support `BYTESLICE` attributes in `go.opentelemetry.io/otel/trace`.
(#8153)
- Support `BYTESLICE` attributes in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace`. (#8153)
- Support `BYTESLICE` attributes in
`go.opentelemetry.io/otel/exporters/otlp/otlplog`. (#8153)
- Support `BYTESLICE` attributes in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric`. (#8153)
- Support `BYTESLICE` attributes in
`go.opentelemetry.io/otel/exporters/zipkin`. (#8153)
- Add `String` method for `Value` type in
`go.opentelemetry.io/otel/attribute`. (#8142)
- Add `Slice` and `SliceValue` functions for new `SLICE` attribute type
in `go.opentelemetry.io/otel/attribute`. (#8166)
- Support `SLICE` attributes in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace`. (#8216)
- Support `SLICE` attributes in
`go.opentelemetry.io/otel/exporters/otlp/otlplog`. (#8216)
- Support `SLICE` attributes in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric`. (#8216)
- Support `SLICE` attributes in
`go.opentelemetry.io/otel/exporters/zipkin`. (#8216)
- Apply `AttributeValueLengthLimit` to `attribute.SLICE` type attribute
values in `go.opentelemetry.io/otel/sdk/trace`, recursively truncating
contained string values. (#8217)
- Add `Error` field on `Record` type in
`go.opentelemetry.io/otel/log/logtest`. (#8148)
- Add `WithMaxRequestSize` option in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc`.
(#8157)
- Add `WithMaxRequestSize` option in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`.
(#8157)
- Add `WithMaxRequestSize` option in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`.
(#8157)
- Add `WithMaxRequestSize` option in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`.
(#8157)
- Add `WithMaxRequestSize` option in
`go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc`. (#8157)
- Add `WithMaxRequestSize` option in
`go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp`. (#8157)
- Add `Settable` to `go.opentelemetry.io/otel/metric/x` to allow reusing
attribute options. (#8178)
- Add experimental support for splitting metric data across multiple
batches in `go.opentelemetry.io/otel/sdk/metric`.
Set `OTEL_GO_X_METRIC_EXPORT_BATCH_SIZE=<max_size>` to enable for all
periodic readers.
See `go.opentelemetry.io/otel/sdk/metric/internal/x` for feature
documentation. (#8071)
- Add experimental self-observability metrics in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`.
  Enable with `OTEL_GO_X_SELF_OBSERVABILITY=true` environment variable.
See
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc/internal/x`
for feature documentation. (#8192)
- Add experimental self-observability metrics in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`.
  Enable with `OTEL_GO_X_SELF_OBSERVABILITY=true` environment variable.
See
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp/internal/x`
for feature documentation. (#8194)
- Add experimental self-observability metrics in
`go.opentelemetry.io/otel/exporters/stdout/stdoutlog`.
  Enable with `OTEL_GO_X_SELF_OBSERVABILITY=true` environment variable.
See `go.opentelemetry.io/otel/stdout/stdoutlog/internal/x` for feature
documentation. (#8263)
- Add `WithDefaultAttributes` to `go.opentelemetry.io/otel/metric/x` to
support setting default attributes on instruments. (#8135)
- Add `go.opentelemetry.io/otel/semconv/v1.41.0` package.
The package contains semantic conventions from the `v1.41.0` version of
the OpenTelemetry Semantic Conventions.
See the [migration documentation](./semconv/v1.41.0/MIGRATION.md) for
information on how to upgrade from
`go.opentelemetry.io/otel/semconv/v1.40.0`. (#8324)
- Add Observable variants of instruments to
`go.opentelemetry.io/otel/semconv/v1.41.0` package. (#8350)
- Generate explicit histogram bucket boundaries from weaver
configuration for HTTP and RPC duration instruments in
`go.opentelemetry.io/otel/semconv/v1.41.0`. (#8002)

### Changed

- ⚠️ **Breaking Change:** `go.opentelemetry.io/otel/sdk/metric` now
applies a default cardinality limit of 2000 to comply with the Metrics
SDK specification recommendation.
New attribute sets are dropped when the cardinality limit is reached.
The measurement of these sets are aggregated into a special attribute
set containing `attribute.Bool("otel.metric.overflow", true)`.
  This can break users who relied on the previous unlimited default.
Set `WithCardinalityLimit(0)` or the deprecated
`OTEL_GO_X_CARDINALITY_LIMIT=0` environment variable to preserve
unlimited cardinality.
Note that support for `OTEL_GO_X_CARDINALITY_LIMIT` may be removed in a
future release. (#8247)
- `ErrorType` in `go.opentelemetry.io/otel/semconv` now unwraps errors
created with `fmt.Errorf` when deriving the `error.type` attribute.
(#8133)
- `go.opentelemetry.io/otel/sdk/log` now unwraps error chains created
with `fmt.Errorf` when deriving the `error.type` attribute from errors
on log records. (#8133)
- `Set.MarshalLog` method in `go.opentelemetry.io/otel/attribute` now
uses `Value.String` formatting following the [OpenTelemetry AnyValue
representation for non-OTLP
protocols](https://opentelemetry.io/docs/specs/otel/common/#anyvalue).
(#8169)
- Optimize `go.opentelemetry.io/otel/sdk/metric` to return a drop
reservoir and short-circuit `Offer` calls to the exemplar reservoir when
`exemplar.AlwaysOffFilter` is configured. (#8211) (#8267)
- Optimize `go.opentelemetry.io/otel/sdk/metric` to return a drop
reservoir for asynchronous instruments when `exemplar.TraceBasedFilter`
is configured. (#8286)

### Deprecated

- Deprecate `Value.Emit` method in `go.opentelemetry.io/otel/attribute`.
  Use `Value.String` instead. (#8176)

### Fixed

- Limit OTLP request size to 64 MiB by default in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc`.
The limit applies before compression, oversized requests are treated as
non-retryable errors, and the limit can be configured with the new
`WithMaxRequestSize` option. (#8157, #8365)
- Limit OTLP request size to 64 MiB by default in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`.
The limit applies before compression, oversized requests are treated as
non-retryable errors, and the limit can be configured with the new
`WithMaxRequestSize` option. (#8157, #8365)
- Limit OTLP request size to 64 MiB by default in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`.
The limit applies before compression, oversized requests are treated as
non-retryable errors, and the limit can be configured with the new
`WithMaxRequestSize` option. (#8157, #8365)
- Limit OTLP request size to 64 MiB by default in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`.
The limit applies before compression, oversized requests are treated as
non-retryable errors, and the limit can be configured with the new
`WithMaxRequestSize` option. (#8157, #8365)
- Limit OTLP request size to 64 MiB by default in
`go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc`.
The limit applies before compression, oversized requests are treated as
non-retryable errors, and the limit can be configured with the new
`WithMaxRequestSize` option. (#8157, #8365)
- Limit OTLP request size to 64 MiB by default in
`go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp`.
The limit applies before compression, oversized requests are treated as
non-retryable errors, and the limit can be configured with the new
`WithMaxRequestSize` option. (#8157, #8365)
- Fix gzipped request body replay on redirect in
`go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`.
(#8135)
- Fix gzipped request body replay on redirect in
`go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp`. (#8152)
- `go.opentelemetry.io/otel/exporters/prometheus` now uses
`Value.String` formatting for label values following the [OpenTelemetry
AnyValue representation for non-OTLP
protocols](https://opentelemetry.io/docs/specs/otel/common/#anyvalue).
(#8170)
- Propagate errors from the exporter when calling `Shutdown` on
`BatchSpanProcessor` in `go.opentelemetry.io/otel/sdk/trace`. (#8197)
- Fix stale status code reporting on self-observability metrics in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp` and
`go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp`. (#8226)
- Fix a concurrent `Collect` data race and potential panic in
`go.opentelemetry.io/otel/exporters/prometheus` when
`WithResourceAsConstantLabels` option is used. (#8227)
- Fix race condition in `FixedSizeReservoir` in
`go.opentelemetry.io/otel/sdk/metric/exemplar` by reverting #7447.
(#8249)
- Fix `FixedSizeReservoir` in
`go.opentelemetry.io/otel/sdk/metric/exemplar` to safely handle zero
size.
A capacity check in the constructor initializes the reservoir safely and
skips initialization for zero-cap; early returns in `Offer()` and
`Collect()` ensure no-op behavior. (#8295)
- Fix counting of spans and logs in self-observability metrics in
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc`,
`go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`,
`go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc`, and
`go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp`. (#8254)
- Drop conflicting scope attributes named `name`, `version`, or
`schema_url` from metric labels in
`go.opentelemetry.io/otel/exporters/prometheus`, preserving the
dedicated `otel_scope_name`, `otel_scope_version`, and
`otel_scope_schema_url` labels. (#8264)
- Close schema files opened by `ParseFile` in
`go.opentelemetry.io/otel/schema/v1.0` and
`go.opentelemetry.io/otel/schema/v1.1`.
([GHSA-995v-fvrw-c78m](https://github.com/open-telemetry/opentelemetry-go/security/advisories/GHSA-995v-fvrw-c78m))
- Enforce the 8192-byte baggage size limit during extraction/parsing,
changing behavior when the limit is exceeded in
`go.opentelemetry.io/otel/baggage` and
`go.opentelemetry.io/otel/propagation`. (#8222)
- Fix `go.opentelemetry.io/otel/semconv/v1.41.0` to include `Attr*`
helper methods for required attributes on observable instruments.
(#8361)
- Limit baggage extraction error reporting in
`go.opentelemetry.io/otel/propagation` to prevent malformed or oversized
baggage headers from flooding logs.
([GHSA-5wrp-cwcj-q835](https://github.com/open-telemetry/opentelemetry-go/security/advisories/GHSA-5wrp-cwcj-q835))
2026-05-27 18:42:37 +02:00
David Ashpole 6fdcf82adf feat: add self-observability metrics to otlpmetricgrpc metric exporters (#8192)
Fixes https://github.com/open-telemetry/opentelemetry-go/issues/7012

This updates
https://github.com/open-telemetry/opentelemetry-go/pull/7120, and
addresses outstanding comments. See commit descriptions for the changes
made on top of that PR. Credit to minimAluminiumalism for the initial
work.

Benchmark results:

```
goos: linux
goarch: amd64
pkg: go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc/internal/observ
cpu: Intel(R) Xeon(R) CPU @ 2.20GHz
                                             │ bench_feature.txt │
                                             │      sec/op       │
InstrumentationTrackExport/EnabledNoError-24         1.045µ ± 5%
InstrumentationTrackExport/EnabledError-24           2.248µ ± 1%
InstrumentationTrackExport/Disabled-24               9.643n ± 1%
geomean                                              282.9n

                                             │ bench_feature.txt │
                                             │       B/op        │
InstrumentationTrackExport/EnabledNoError-24        160.0 ± 0%
InstrumentationTrackExport/EnabledError-24          488.0 ± 0%
InstrumentationTrackExport/Disabled-24              0.000 ± 0%
geomean                                                        ¹
¹ summaries must be >0 to compute geomean

                                             │ bench_feature.txt │
                                             │     allocs/op     │
InstrumentationTrackExport/EnabledNoError-24        5.000 ± 0%
InstrumentationTrackExport/EnabledError-24          6.000 ± 0%
InstrumentationTrackExport/Disabled-24              0.000 ± 0%
geomean                                                        ¹
¹ summaries must be >0 to compute geomean
```

Written with assistance from Gemini.

---------

Co-authored-by: minimAluminiumalism <caixuesen@outlook.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Robert Pająk <pellared@hotmail.com>
2026-05-27 18:19:11 +02:00
renovate[bot] 3a91dc62d3 fix(deps): update googleapis to 3dc84a4 (#8375) 2026-05-27 09:28:43 +02:00
Robert Pająk f593185679 exporters/otlp: default max request size to 64 MiB (#8365)
Per https://github.com/open-telemetry/opentelemetry-proto/pull/782 where
we agreed to have 64 MiB as the default limit.
2026-05-26 21:00:40 +02:00
ian 9a68034bd4 add self observability for stdout exporter (#8263)
ref: https://github.com/open-telemetry/opentelemetry-go/issues/7020

```txt
goos: darwin
goarch: arm64
pkg: go.opentelemetry.io/otel/exporters/stdout/stdoutlog
                                      │ bench_observability_disabled_6x.txt │ bench_observability_upload_6x.txt │
                                      │               sec/op                │           sec/op            vs base   │
ExporterObservability/Disabled-8                                3.968µ ± 1%
ExporterObservability/UploadSuccess-8                                                        4.236µ ± 2%
geomean                                                         3.967µ                       4.235µ       ? ¹ ²
¹ benchmark set differs from baseline; geomeans may not be comparable
² ratios must be >0 to compute geomean

                                      │ bench_observability_disabled_6x.txt │ bench_observability_upload_6x.txt │
                                      │                B/op                 │            B/op             vs base   │
ExporterObservability/Disabled-8                               1.419Ki ± 0%
ExporterObservability/UploadSuccess-8                                                       1.420Ki ± 0%
geomean                                                        1.419Ki                      1.420Ki       ? ¹ ²
¹ benchmark set differs from baseline; geomeans may not be comparable
² ratios must be >0 to compute geomean

                                      │ bench_observability_disabled_6x.txt │ bench_observability_upload_6x.txt │
                                      │              allocs/op              │         allocs/op           vs base   │
ExporterObservability/Disabled-8                                 33.00 ± 0%
ExporterObservability/UploadSuccess-8                                                         33.00 ± 0%
geomean                                                          33.00                        33.00       ? ¹ ²
¹ benchmark set differs from baseline; geomeans may not be comparable
² ratios must be >0 to compute geomean
```
2026-05-26 15:49:39 +02:00
renovate[bot] 714a1965ac fix(deps): update googleapis to 0a33c5d (#8369) 2026-05-25 17:38:05 +02:00
Matthieu MOREL f6c8baa895 Fix receiver-naming issues from revive (#8093)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2026-05-22 09:01:15 +02:00
renovate[bot] 4fb7134cdd fix(deps): update golang.org/x (#8363) 2026-05-22 07:45:50 +02:00
renovate[bot] e5bdc31110 fix(deps): update googleapis to aa98bba (#8344) 2026-05-21 10:08:57 +02:00
renovate[bot] 0f2892c59a fix(deps): update module google.golang.org/grpc to v1.81.1 (#8340) 2026-05-21 09:23:55 +02:00
Tyler Yahn 442cdbdd94 Generate and upgrade to semconv/v1.41.0 (#8324)
Fix https://github.com/open-telemetry/opentelemetry-go/issues/8299

Relevant upstream v1.41.0 release notes:

> ### 🛑 Breaking changes 🛑
> 
> - `graphql`: Change `graphql.document` attribute requirement level
from Recommended to Opt-In due to sensitive data, cardinality, and size
concerns
([#2985](https://github.com/open-telemetry/semantic-conventions/issues/2985))
> - `process`: Move process.executable to its own entity.
([#3535](https://github.com/open-telemetry/semantic-conventions/issues/3535))
> - `process`: Update requirement levels for process attributes to
ensure consistent identification and description across platforms.
([#864](https://github.com/open-telemetry/semantic-conventions/issues/864))
> - `rpc`: Remove `client.address` and `client.port` attributes from RPC
server spans.
([#3487](https://github.com/open-telemetry/semantic-conventions/issues/3487),
[#3488](https://github.com/open-telemetry/semantic-conventions/issues/3488))
> 
> ### 💡 Enhancements 💡
> 
> - `Go`: Add opt-in go.memory.gc.pause.duration histogram metric.
([#3353](https://github.com/open-telemetry/semantic-conventions/issues/3353))
> - `deployment`: Stabilize `deployment.environment.name` attribute.
([#3339](https://github.com/open-telemetry/semantic-conventions/issues/3339))
> - `deployment`: Add enum values for `deployment.environment.name`
attribute.
([#2910](https://github.com/open-telemetry/semantic-conventions/issues/2910))
> - `go`: Add the go.cpu.time opt-in metric, and add
go.cpu.detailed_state and go.memory.detailed_type attributes to CPU and
memory metrics respectively with wildcard values.
([#3354](https://github.com/open-telemetry/semantic-conventions/issues/3354))
> - `go`: Add the opt-in go.memory.gc.cycles metric.
([#3353](https://github.com/open-telemetry/semantic-conventions/issues/3353))
> - `telemetry`: Promote `telemetry.distro.name` and
`telemetry.distro.version` attributes to 'stable'.
([#3650](https://github.com/open-telemetry/semantic-conventions/issues/3650))

This PR also:
- fixes semconv migration generation to ignore unexported declarations
when computing renames/removals
- upgrades repo imports, depguard, docs, templates, and schema URL
expectations to `go.opentelemetry.io/otel/semconv/v1.41.0`
- adds missing generated-file headers to semconvkit templates and
regenerates the affected `v1.41.0` files via `TAG="v1.41.0" make
semconv-generate`

---------

Co-authored-by: David Ashpole <dashpole@google.com>
2026-05-14 14:06:05 -04:00
Mikhail Mazurskiy c45d9a3301 fix: clear cached objects to enable GC (#8233)
There is a the same problem in the semconv package, but I'm not sure how
to regenerate those files.

Also,
[`ResourceMetrics`](https://github.com/open-telemetry/opentelemetry-go/blob/bec9f66b45ae1e679212285467572d132b627ff4/exporters/prometheus/exporter.go#L181)
should be cleared too, but it's not. I wonder how things work today
because this object has a slice that keeps growing, doesn't it? I
decided not to touch it for now.

`sdk/metric.BenchmarkEndToEndCounterAdd` shows no change:

```
goos: darwin
goarch: arm64
pkg: go.opentelemetry.io/otel/sdk/metric
cpu: Apple M4 Max
                                                                          │  before.txt  │              after.txt               │
                                                                          │    sec/op    │    sec/op     vs base                │
EndToEndCounterAdd/NoFilter/Attributes/1/Precomputed/WithAttributeSet-16    64.12n ± ∞ ¹   63.45n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Precomputed/WithAttributes-16      62.82n ± ∞ ¹   63.04n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Dynamic/WithAttributeSet-16        90.09n ± ∞ ¹   81.45n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Dynamic/WithAttributes-16          90.15n ± ∞ ¹   92.02n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Naive/WithAttributes-16            102.2n ± ∞ ¹   102.4n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Precomputed/WithAttributeSet-16    61.13n ± ∞ ¹   62.71n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Precomputed/WithAttributes-16      59.10n ± ∞ ¹   61.69n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Dynamic/WithAttributeSet-16        144.4n ± ∞ ¹   149.5n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Dynamic/WithAttributes-16          223.0n ± ∞ ¹   223.3n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Naive/WithAttributes-16            277.8n ± ∞ ¹   277.2n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Precomputed/WithAttributeSet-16   62.41n ± ∞ ¹   59.82n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Precomputed/WithAttributes-16     65.09n ± ∞ ¹   65.49n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Dynamic/WithAttributeSet-16       262.4n ± ∞ ¹   270.1n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Dynamic/WithAttributes-16         392.8n ± ∞ ¹   418.6n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Naive/WithAttributes-16           505.8n ± ∞ ¹   523.3n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Precomputed/WithAttributeSet-16    77.02n ± ∞ ¹   77.29n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Precomputed/WithAttributes-16      77.35n ± ∞ ¹   77.34n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Dynamic/WithAttributeSet-16        94.47n ± ∞ ¹   97.93n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Dynamic/WithAttributes-16          107.8n ± ∞ ¹   110.4n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Naive/WithAttributes-16            121.4n ± ∞ ¹   121.6n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Precomputed/WithAttributeSet-16    172.4n ± ∞ ¹   169.0n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Precomputed/WithAttributes-16      165.7n ± ∞ ¹   167.6n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Dynamic/WithAttributeSet-16        291.1n ± ∞ ¹   294.8n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Dynamic/WithAttributes-16          355.7n ± ∞ ¹   358.8n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Naive/WithAttributes-16            408.4n ± ∞ ¹   402.2n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Precomputed/WithAttributeSet-16   321.4n ± ∞ ¹   322.3n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Precomputed/WithAttributes-16     315.3n ± ∞ ¹   314.9n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Dynamic/WithAttributeSet-16       557.3n ± ∞ ¹   576.7n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Dynamic/WithAttributes-16         685.9n ± ∞ ¹   712.2n ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Naive/WithAttributes-16           796.0n ± ∞ ¹   809.4n ± ∞ ¹       ~ (p=1.000 n=1) ²
geomean                                                                     168.5n         170.0n        +0.87%
¹ need >= 6 samples for confidence interval at level 0.95
² need >= 4 samples to detect a difference at alpha level 0.05

                                                                          │  before.txt   │               after.txt               │
                                                                          │     B/op      │     B/op       vs base                │
EndToEndCounterAdd/NoFilter/Attributes/1/Precomputed/WithAttributeSet-16      0.000 ± ∞ ¹     0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Precomputed/WithAttributes-16        0.000 ± ∞ ¹     0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Dynamic/WithAttributeSet-16          88.00 ± ∞ ¹     88.00 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Dynamic/WithAttributes-16            152.0 ± ∞ ¹     152.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Naive/WithAttributes-16              232.0 ± ∞ ¹     232.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Precomputed/WithAttributeSet-16      0.000 ± ∞ ¹     0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Precomputed/WithAttributes-16        0.000 ± ∞ ¹     0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Dynamic/WithAttributeSet-16          344.0 ± ∞ ¹     344.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Dynamic/WithAttributes-16            665.0 ± ∞ ¹     665.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Naive/WithAttributes-16             1000.0 ± ∞ ¹    1000.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Precomputed/WithAttributeSet-16     0.000 ± ∞ ¹     0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Precomputed/WithAttributes-16       0.000 ± ∞ ¹     0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Dynamic/WithAttributeSet-16         729.0 ± ∞ ¹     729.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Dynamic/WithAttributes-16         1.399Ki ± ∞ ¹   1.400Ki ± ∞ ¹       ~ (p=1.000 n=1) ³
EndToEndCounterAdd/NoFilter/Attributes/10/Naive/WithAttributes-16           2.102Ki ± ∞ ¹   2.102Ki ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Precomputed/WithAttributeSet-16      64.00 ± ∞ ¹     64.00 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Precomputed/WithAttributes-16        64.00 ± ∞ ¹     64.00 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Dynamic/WithAttributeSet-16          152.0 ± ∞ ¹     152.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Dynamic/WithAttributes-16            216.0 ± ∞ ¹     216.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Naive/WithAttributes-16              296.0 ± ∞ ¹     296.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Precomputed/WithAttributeSet-16      576.0 ± ∞ ¹     576.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Precomputed/WithAttributes-16        576.0 ± ∞ ¹     576.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Dynamic/WithAttributeSet-16          921.0 ± ∞ ¹     921.0 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Dynamic/WithAttributes-16          1.212Ki ± ∞ ¹   1.212Ki ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Naive/WithAttributes-16            1.539Ki ± ∞ ¹   1.539Ki ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Precomputed/WithAttributeSet-16   1.312Ki ± ∞ ¹   1.312Ki ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Precomputed/WithAttributes-16     1.312Ki ± ∞ ¹   1.312Ki ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Dynamic/WithAttributeSet-16       2.025Ki ± ∞ ¹   2.025Ki ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Dynamic/WithAttributes-16         2.713Ki ± ∞ ¹   2.714Ki ± ∞ ¹       ~ (p=1.000 n=1) ³
EndToEndCounterAdd/Filtered/Attributes/10/Naive/WithAttributes-16           3.414Ki ± ∞ ¹   3.414Ki ± ∞ ¹       ~ (p=1.000 n=1) ²
geomean                                                                                 ⁴                  +0.00%               ⁴
¹ need >= 6 samples for confidence interval at level 0.95
² all samples are equal
³ need >= 4 samples to detect a difference at alpha level 0.05
⁴ summaries must be >0 to compute geomean

                                                                          │ before.txt  │              after.txt              │
                                                                          │  allocs/op  │  allocs/op   vs base                │
EndToEndCounterAdd/NoFilter/Attributes/1/Precomputed/WithAttributeSet-16    0.000 ± ∞ ¹   0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Precomputed/WithAttributes-16      0.000 ± ∞ ¹   0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Dynamic/WithAttributeSet-16        2.000 ± ∞ ¹   2.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Dynamic/WithAttributes-16          3.000 ± ∞ ¹   3.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/1/Naive/WithAttributes-16            5.000 ± ∞ ¹   5.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Precomputed/WithAttributeSet-16    0.000 ± ∞ ¹   0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Precomputed/WithAttributes-16      0.000 ± ∞ ¹   0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Dynamic/WithAttributeSet-16        2.000 ± ∞ ¹   2.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Dynamic/WithAttributes-16          3.000 ± ∞ ¹   3.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/5/Naive/WithAttributes-16            5.000 ± ∞ ¹   5.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Precomputed/WithAttributeSet-16   0.000 ± ∞ ¹   0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Precomputed/WithAttributes-16     0.000 ± ∞ ¹   0.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Dynamic/WithAttributeSet-16       2.000 ± ∞ ¹   2.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Dynamic/WithAttributes-16         3.000 ± ∞ ¹   3.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/NoFilter/Attributes/10/Naive/WithAttributes-16           5.000 ± ∞ ¹   5.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Precomputed/WithAttributeSet-16    1.000 ± ∞ ¹   1.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Precomputed/WithAttributes-16      1.000 ± ∞ ¹   1.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Dynamic/WithAttributeSet-16        3.000 ± ∞ ¹   3.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Dynamic/WithAttributes-16          4.000 ± ∞ ¹   4.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/1/Naive/WithAttributes-16            6.000 ± ∞ ¹   6.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Precomputed/WithAttributeSet-16    2.000 ± ∞ ¹   2.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Precomputed/WithAttributes-16      2.000 ± ∞ ¹   2.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Dynamic/WithAttributeSet-16        4.000 ± ∞ ¹   4.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Dynamic/WithAttributes-16          5.000 ± ∞ ¹   5.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/5/Naive/WithAttributes-16            7.000 ± ∞ ¹   7.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Precomputed/WithAttributeSet-16   2.000 ± ∞ ¹   2.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Precomputed/WithAttributes-16     2.000 ± ∞ ¹   2.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Dynamic/WithAttributeSet-16       4.000 ± ∞ ¹   4.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Dynamic/WithAttributes-16         5.000 ± ∞ ¹   5.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
EndToEndCounterAdd/Filtered/Attributes/10/Naive/WithAttributes-16           7.000 ± ∞ ¹   7.000 ± ∞ ¹       ~ (p=1.000 n=1) ²
geomean                                                                               ³                +0.00%               ³
¹ need >= 6 samples for confidence interval at level 0.95
² all samples are equal
³ summaries must be >0 to compute geomean
```

---------

Co-authored-by: David Ashpole <dashpole@google.com>
2026-05-14 13:49:51 -04:00
renovate[bot] effbbb2e4d fix(deps): update googleapis to 3700d41 (#8332)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[google.golang.org/genproto/googleapis/api](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `60b97b3` → `3700d41` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `60b97b3` → `3700d41` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| require | digest | `60b97b3` → `3700d41` |

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

🔕 **Ignore**: Close this PR and you won't be reminded about 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-11 12:56:34 -07:00
renovate[bot] 236c4fc61c fix(deps): update golang.org/x (#8327)
This PR contains the following updates:

| Package | Type | Update | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|---|---|
| [golang.org/x/exp](https://pkg.go.dev/golang.org/x/exp) | require |
digest | `746e56f` → `74f9aab` |
![age](https://developer.mend.io/api/mc/badges/age/go/golang.org%2fx%2fexp/v0.0.0-20260508232706-74f9aab9d74a?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/golang.org%2fx%2fexp/v0.0.0-20260410095643-746e56fc9e2f/v0.0.0-20260508232706-74f9aab9d74a?slim=true)
|
|
[golang.org/x/exp/typeparams](https://pkg.go.dev/golang.org/x/exp/typeparams)
| indirect | digest | `746e56f` → `74f9aab` |
![age](https://developer.mend.io/api/mc/badges/age/go/golang.org%2fx%2fexp%2ftypeparams/v0.0.0-20260508232706-74f9aab9d74a?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/golang.org%2fx%2fexp%2ftypeparams/v0.0.0-20260410095643-746e56fc9e2f/v0.0.0-20260508232706-74f9aab9d74a?slim=true)
|
| [golang.org/x/net](https://pkg.go.dev/golang.org/x/net) | indirect |
minor | [`v0.53.0` →
`v0.54.0`](https://cs.opensource.google/go/x/net/+/refs/tags/v0.53.0...refs/tags/v0.54.0)
|
![age](https://developer.mend.io/api/mc/badges/age/go/golang.org%2fx%2fnet/v0.54.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/golang.org%2fx%2fnet/v0.53.0/v0.54.0?slim=true)
|
| [golang.org/x/tools](https://pkg.go.dev/golang.org/x/tools) | require
| minor | [`v0.44.0` →
`v0.45.0`](https://cs.opensource.google/go/x/tools/+/refs/tags/v0.44.0...refs/tags/v0.45.0)
|
![age](https://developer.mend.io/api/mc/badges/age/go/golang.org%2fx%2ftools/v0.45.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/golang.org%2fx%2ftools/v0.44.0/v0.45.0?slim=true)
|

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

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

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-11 11:49:38 -07:00
renovate[bot] cf2a4a180f chore(deps): update module mvdan.cc/gofumpt to v0.10.0 (#8304)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [mvdan.cc/gofumpt](https://redirect.github.com/mvdan/gofumpt) |
`v0.9.2` → `v0.10.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/mvdan.cc%2fgofumpt/v0.10.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/mvdan.cc%2fgofumpt/v0.9.2/v0.10.0?slim=true)
|

---

### Release Notes

<details>
<summary>mvdan/gofumpt (mvdan.cc/gofumpt)</summary>

###
[`v0.10.0`](https://redirect.github.com/mvdan/gofumpt/blob/HEAD/CHANGELOG.md#v0100---2026-05-04)

[Compare
Source](https://redirect.github.com/mvdan/gofumpt/compare/v0.9.2...v0.10.0)

This release is based on Go 1.26's gofmt, and requires Go 1.25 or later.

A new rule is introduced to drop unnecessary parentheses around
expressions
where the inner expression is unambiguous on its own, such as `f((3))`.
Parentheses are kept where they are useful, such as on binary
expressions. See
[#&#8203;44](https://redirect.github.com/mvdan/gofumpt/issues/44).

A new rule is introduced to require multi-line function calls to match
the opening and closing parenthesis in terms of the use of newlines. See
[#&#8203;74](https://redirect.github.com/mvdan/gofumpt/issues/74).

The `-extra` flag now accepts a comma-separated list of rule names to
enable
individual extra rules, rather than enabling all of them at once. See
[#&#8203;339](https://redirect.github.com/mvdan/gofumpt/issues/339).

The following changes are included as well:

- Avoid crashing on `go.mod` files without a `module` directive -
[#&#8203;350](https://redirect.github.com/mvdan/gofumpt/issues/350)
- Avoid failing when an ignored directory cannot be read -
[#&#8203;351](https://redirect.github.com/mvdan/gofumpt/issues/351)
- Avoid prefixing more kinds of commented-out Go code with spaces -
[#&#8203;230](https://redirect.github.com/mvdan/gofumpt/issues/230)
- Avoid prefixing a shebang comment with a space -
[#&#8203;237](https://redirect.github.com/mvdan/gofumpt/issues/237)
- Narrow the newlines on assignments rule to ignore complex cases -
[#&#8203;354](https://redirect.github.com/mvdan/gofumpt/issues/354)
- Fix three bugs which caused a second gofumpt run to make changes -
[#&#8203;132](https://redirect.github.com/mvdan/gofumpt/issues/132),
[#&#8203;345](https://redirect.github.com/mvdan/gofumpt/issues/345)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

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

---

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

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

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Tyler Yahn <codingalias@gmail.com>
2026-05-08 12:50:12 -07:00
renovate[bot] b584e1a597 chore(deps): update golang.org/x (#8323)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) | Type |
Update |
|---|---|---|---|---|---|
| [golang.org/x/mod](https://pkg.go.dev/golang.org/x/mod) | [`v0.35.0` →
`v0.36.0`](https://cs.opensource.google/go/x/mod/+/refs/tags/v0.35.0...refs/tags/v0.36.0)
|
![age](https://developer.mend.io/api/mc/badges/age/go/golang.org%2fx%2fmod/v0.36.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/golang.org%2fx%2fmod/v0.35.0/v0.36.0?slim=true)
| indirect | minor |
| [golang.org/x/telemetry](https://pkg.go.dev/golang.org/x/telemetry) |
`e88f59f` → `452d2f6` |
![age](https://developer.mend.io/api/mc/badges/age/go/golang.org%2fx%2ftelemetry/v0.0.0-20260508143814-452d2f60da57?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/golang.org%2fx%2ftelemetry/v0.0.0-20260507140634-e88f59f58e45/v0.0.0-20260508143814-452d2f60da57?slim=true)
| indirect | digest |
| [golang.org/x/text](https://pkg.go.dev/golang.org/x/text) | [`v0.36.0`
→
`v0.37.0`](https://cs.opensource.google/go/x/text/+/refs/tags/v0.36.0...refs/tags/v0.37.0)
|
![age](https://developer.mend.io/api/mc/badges/age/go/golang.org%2fx%2ftext/v0.37.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/golang.org%2fx%2ftext/v0.36.0/v0.37.0?slim=true)
| indirect | minor |

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-08 10:43:41 -07:00
renovate[bot] 25f973a298 fix(deps): update module golang.org/x/sys to v0.44.0 (#8322) 2026-05-08 16:07:36 +02:00
renovate[bot] c3effc10c1 fix(deps): update googleapis to 60b97b3 (#8303)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[google.golang.org/genproto/googleapis/api](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `7cedc36` → `60b97b3` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `7cedc36` → `60b97b3` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| require | digest | `7cedc36` → `60b97b3` |

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

🔕 **Ignore**: Close this PR and you won't be reminded about 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 15:31:12 -07:00
renovate[bot] 0473cc135d fix(deps): update module google.golang.org/grpc to v1.81.0 (#8298)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [google.golang.org/grpc](https://redirect.github.com/grpc/grpc-go) |
`v1.80.0` → `v1.81.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/google.golang.org%2fgrpc/v1.81.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/google.golang.org%2fgrpc/v1.80.0/v1.81.0?slim=true)
|

---

### Release Notes

<details>
<summary>grpc/grpc-go (google.golang.org/grpc)</summary>

###
[`v1.81.0`](https://redirect.github.com/grpc/grpc-go/releases/tag/v1.81.0):
Release 1.81.0

[Compare
Source](https://redirect.github.com/grpc/grpc-go/compare/v1.80.0...v1.81.0)

### Behavior Changes

- balancer/rls: Switch gauge metrics to asynchronous emission (once per
collection cycle) to reduce telemetry noise and align with other gRPC
language implementations.
([#&#8203;8808](https://redirect.github.com/grpc/grpc-go/issues/8808))

### Dependencies

- Minimum supported Go version is now 1.25.
([#&#8203;8969](https://redirect.github.com/grpc/grpc-go/issues/8969))

### Bug Fixes

- xds: Use the leaf cluster's security config for the TLS handshake
instead of the aggregate cluster's config.
([#&#8203;8956](https://redirect.github.com/grpc/grpc-go/issues/8956))
- transport: Send a `RST_STREAM` when receiving an `END_STREAM` when the
stream is not already half-closed.
([#&#8203;8832](https://redirect.github.com/grpc/grpc-go/issues/8832))
- xds: Fix ADS resource name validation to prevent a panic.
([#&#8203;8970](https://redirect.github.com/grpc/grpc-go/issues/8970))

### New Features

- grpc/stats: Add support for custom labels in per-call metrics ([gRFC
A108](https://redirect.github.com/grpc/proposal/blob/master/A108-otel-custom-per-call-label.md)).
([#&#8203;9008](https://redirect.github.com/grpc/grpc-go/issues/9008))
- xds: Add support for Server Name Indication (SNI) and SAN validation
([gRFC
A101](https://redirect.github.com/grpc/proposal/blob/master/A101-SNI-setting-and-SNI-SAN-validation.md)).
Disabled by default. To enable, set `GRPC_EXPERIMENTAL_XDS_SNI=true`
environment variable.
([#&#8203;9016](https://redirect.github.com/grpc/grpc-go/issues/9016))
- xds: Add support to control which fields get propagated from ORCA
backend metric reports to LRS load reports ([gRFC
A85](https://redirect.github.com/grpc/proposal/blob/master/A85-lrs-custom-metrics-changes.md)).
Disabled by default. To enable, set
`GRPC_EXPERIMENTAL_XDS_ORCA_LRS_PROPAGATION=true`.
([#&#8203;9005](https://redirect.github.com/grpc/grpc-go/issues/9005))
- xds: Add metrics to track xDS client connectivity and cached resource
state ([gRFC
A78](https://redirect.github.com/grpc/proposal/blob/master/A78-grpc-metrics-wrr-pf-xds.md)).
([#&#8203;8807](https://redirect.github.com/grpc/grpc-go/issues/8807))
- stats/otel: Enhance `grpc.subchannel.disconnections` metric by adding
disconnection reason to the `grpc.disconnect_error` label ([gRFC
A94](https://redirect.github.com/grpc/proposal/blob/master/A94-subchannel-otel-metrics.md)).
This provides granular insights into why subchannels are closing.
([#&#8203;8973](https://redirect.github.com/grpc/grpc-go/issues/8973))
- mem: Add `mem.Buffer.Slice()` API to slice the buffer like a slice.
([#&#8203;8977](https://redirect.github.com/grpc/grpc-go/issues/8977))
  - Special Thanks: [@&#8203;ash2k](https://redirect.github.com/ash2k)

### Performance Improvements

- alts: Pool read buffers to lower memory utilization when sockets are
unreadable.
([#&#8203;8964](https://redirect.github.com/grpc/grpc-go/issues/8964))
- transport: Pool HTTP/2 framer read buffers to reduce idle memory
consumption. Currently limited to Linux for ALTS and non-encrypted
transports (TCP, Unix). To disable, set
`GRPC_GO_EXPERIMENTAL_HTTP_FRAMER_READ_BUFFER_POOLING=false` and report
any issues.
([#&#8203;9032](https://redirect.github.com/grpc/grpc-go/issues/9032))

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

🔕 **Ignore**: Close this PR and you won't be reminded about 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-04 09:48:12 +02:00
Arthur Silva Sens f3695d093a Prometheus Exporter: Drop Scope attributes name, version and schema_url (#8264)
The Prometheus SIG is currently working to stabilize the Prometheus
exporter spec and the OTLP<->Prometheus data model compatibility spec.
While working on
https://github.com/open-telemetry/opentelemetry-specification/pull/5052,
I realized the Go SDK is not handling collisions between the Scope
attribute and the Scope Name, Version, and SchemaURL.

This PR address it :)

---------

Signed-off-by: Arthur Silva Sens <arthursens2005@gmail.com>
Co-authored-by: David Ashpole <dashpole@google.com>
2026-04-30 07:48:18 -07:00
renovate[bot] 1d691d6f77 fix(deps): update googleapis to 7cedc36 (#8266)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[google.golang.org/genproto/googleapis/api](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `e10c466` → `7cedc36` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `e10c466` → `7cedc36` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| require | digest | `e10c466` → `7cedc36` |

---

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

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-28 09:31:45 +02:00
David Ashpole 4dd8821c94 fix counting of spans/logs in self-observability metrics in otlp trace and log exporters (#8254)
Fixes https://github.com/open-telemetry/opentelemetry-go/issues/8253
2026-04-24 09:20:58 +02:00
Robert Pająk b4e15cd1c7 Add MaxRequestSize option to OTLP exporters (#8157)
Per https://github.com/open-telemetry/opentelemetry-proto/pull/782

- Introduce WithMaxRequestSize option for OTLP exporters to set a limit
on the size of serialized export requests.
- Implement logic in the HTTP and gRPC clients to check the request
size against the configured maximum before compression and sending.
- The default configuration is that the maximum request size is 32 MiB.
2026-04-23 22:12:44 +02:00
David Ashpole 5ecaa5b54f feat: add self-observability metrics to otlpmetrichttp metric exporters (#8194)
Fixes https://github.com/open-telemetry/opentelemetry-go/issues/7011

This PR updates
https://github.com/open-telemetry/opentelemetry-go/pull/7493, and
addresses outstanding comments. See commit descriptions for the changes
made on top of that PR. Credit to @tongoss for most of the work.

Benchmark results:

```
goos: linux
goarch: amd64
pkg: go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp/internal/observ
cpu: Intel(R) Xeon(R) CPU @ 2.20GHz
                                             │ sec/op      │
InstrumentationExportMetrics/NoError-24        787.4n ± 5%
InstrumentationExportMetrics/PartialError-24   4.137µ ± 9%
InstrumentationExportMetrics/FullError-24      3.938µ ± 7%
geomean                                        2.341µ

                                             │  B/op       │
InstrumentationExportMetrics/NoError-24        0.000 ± 0%
InstrumentationExportMetrics/PartialError-24   787.0 ± 0%
InstrumentationExportMetrics/FullError-24      787.0 ± 0%
geomean                                                   ¹
¹ summaries must be >0 to compute geomean

                                             │ allocs/op   │
InstrumentationExportMetrics/NoError-24        0.000 ± 0%
InstrumentationExportMetrics/PartialError-24   6.000 ± 0%
InstrumentationExportMetrics/FullError-24      6.000 ± 0%
geomean                                                   ¹
¹ summaries must be >0 to compute geomean
```
```
goos: linux
goarch: amd64
pkg: go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp
cpu: Intel(R) Xeon(R) CPU @ 2.20GHz
                                         │    sec/op     │
ExporterExportMetrics/Observability-24     433.5µ ± 4%
ExporterExportMetrics/NoObservability-24   439.3µ ± 4%
geomean                                    436.4µ

                                         │     B/op      │
ExporterExportMetrics/Observability-24     28.72Ki ± 2%
ExporterExportMetrics/NoObservability-24   28.71Ki ± 2%
geomean                                    28.71Ki

                                         │   allocs/op   │
ExporterExportMetrics/Observability-24     446.0 ± 0%
ExporterExportMetrics/NoObservability-24   446.0 ± 0%
geomean                                    446.0

```

Written with assistance from Gemini.

---------

Co-authored-by: Robert Wu <robertxtw@gmail.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Flc゛ <i@flc.io>
2026-04-21 14:58:55 -04:00
ian 63ee0c59c6 stdlog observ: remove partial success handling (#8174)
While adding instrumentation for `stdoutlog`, I found that
`PartialSuccess` handling is not needed for this exporter.
`stdoutlog` does not return partial-export semantics

---------

Co-authored-by: Damien Mathieu <42@dmathieu.com>
2026-04-21 11:01:44 +02:00
renovate[bot] af0cd7b1b6 fix(deps): update googleapis to e10c466 (#8241)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[google.golang.org/genproto/googleapis/api](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `afd174a` → `e10c466` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `afd174a` → `e10c466` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| require | digest | `afd174a` → `e10c466` |

---

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

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

🔕 **Ignore**: Close this PR and you won't be reminded about 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-21 09:49:39 +02:00
David Ashpole 5bd5702ad2 Fix stale status code reporting on self-observability metrics (#8226)
Fixes https://github.com/open-telemetry/opentelemetry-go/issues/8218

This now omits the status code attribute when a request fails before
getting a response, and doesn't use the previous response's status code
when reporting self-observability metrics.
2026-04-20 18:24:07 +02:00
Robert Pająk fa9276b15e exporters: support SLICE attributes (#8216)
Fixes #8162

Follow-up to #8153 for `attribute.SLICE`.

Add end-to-end exporter handling for `attribute.SLICE` in the remaining
paths that still treated it as invalid or relied on fallback formatting.

Changes:

- encode `attribute.SLICE` as OTLP `AnyValue_ArrayValue` for trace, log,
and metric transforms
- serialize Zipkin `SLICE` attributes using the non-OTLP AnyValue string
representation
- add trace-side coverage for recursive `convAttrValue` slice conversion
2026-04-20 11:03:34 +02:00
Robert Pająk 3384d39f6b prometheus: fix Collect data race for constant resource labels (#8227) 2026-04-20 10:37:32 +02:00
David Ashpole 3356ad3f1a Fix typos found by copilot (#8221)
Found during copilot code reviews on other PRs.


https://github.com/open-telemetry/opentelemetry-go/pull/8211#discussion_r3094951812
2026-04-16 12:17:21 -07:00
renovate[bot] bb6804e300 chore(deps): update module github.com/grpc-ecosystem/grpc-gateway/v2 to v2.29.0 (#8214)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[github.com/grpc-ecosystem/grpc-gateway/v2](https://redirect.github.com/grpc-ecosystem/grpc-gateway)
| `v2.28.0` → `v2.29.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgrpc-ecosystem%2fgrpc-gateway%2fv2/v2.29.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fgrpc-ecosystem%2fgrpc-gateway%2fv2/v2.28.0/v2.29.0?slim=true)
|

---

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

---

### Release Notes

<details>
<summary>grpc-ecosystem/grpc-gateway
(github.com/grpc-ecosystem/grpc-gateway/v2)</summary>

###
[`v2.29.0`](https://redirect.github.com/grpc-ecosystem/grpc-gateway/releases/tag/v2.29.0)

[Compare
Source](https://redirect.github.com/grpc-ecosystem/grpc-gateway/compare/v2.28.0...v2.29.0)

#### What's Changed

- fix: use proto.Merge to avoid copylocks with use\_opaque\_api=true by
[@&#8203;emahiro](https://redirect.github.com/emahiro) in
[#&#8203;6383](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6383)
- fix: allow proto3 optional fields in path parameters by
[@&#8203;susanachl](https://redirect.github.com/susanachl) in
[#&#8203;6416](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6416)
- Add option to disable HTTP method override by
[@&#8203;achew22](https://redirect.github.com/achew22) in
[#&#8203;6447](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6447)
- Add Go documentation badge to README by
[@&#8203;achew22](https://redirect.github.com/achew22) in
[#&#8203;6448](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6448)
- fix: add missing return statements in error handler paths by
[@&#8203;jet-go](https://redirect.github.com/jet-go) in
[#&#8203;6561](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6561)
- Deprecate fields and methods if file is deprecated by
[@&#8203;aidandj](https://redirect.github.com/aidandj) in
[#&#8203;6613](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6613)
- Add edition 2024 support by
[@&#8203;printfn](https://redirect.github.com/printfn) in
[#&#8203;6622](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6622)

#### New Contributors

- [@&#8203;emahiro](https://redirect.github.com/emahiro) made their
first contribution in
[#&#8203;6383](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6383)
- [@&#8203;susanachl](https://redirect.github.com/susanachl) made their
first contribution in
[#&#8203;6416](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6416)
- [@&#8203;jet-go](https://redirect.github.com/jet-go) made their first
contribution in
[#&#8203;6561](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6561)
- [@&#8203;aidandj](https://redirect.github.com/aidandj) made their
first contribution in
[#&#8203;6613](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6613)
- [@&#8203;printfn](https://redirect.github.com/printfn) made their
first contribution in
[#&#8203;6622](https://redirect.github.com/grpc-ecosystem/grpc-gateway/pull/6622)

**Full Changelog**:
<https://github.com/grpc-ecosystem/grpc-gateway/compare/v2.28.0...v2.29.0>

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

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

---

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

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-16 11:11:40 +02:00
Robert Pająk 92176e3d8b otlptracehttp: reset pooled gzip writer before reuse (#8196)
Based on https://github.com/open-telemetry/opentelemetry-go/pull/8152
and https://github.com/open-telemetry/opentelemetry-go/pull/8185
2026-04-14 23:22:11 +02:00
renovate[bot] 35921bd426 fix(deps): update googleapis to afd174a (#8195)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[google.golang.org/genproto/googleapis/api](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `3e5c5a5` → `afd174a` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| indirect | digest | `3e5c5a5` → `afd174a` |
|
[google.golang.org/genproto/googleapis/rpc](https://redirect.github.com/googleapis/go-genproto)
| require | digest | `3e5c5a5` → `afd174a` |

---

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

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

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

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

🔕 **Ignore**: Close this PR and you won't be reminded about 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-go).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-14 09:23:20 +02:00