CLOUD-727: Bump go.opentelemetry.io/otel/exporters/stdout/stdouttrace from 1.38.0 to 1.39.0
Bumps go.opentelemetry.io/otel/exporters/stdout/stdouttrace from 1.38.0 to 1.39.0.
Release notes
Sourced from go.opentelemetry.io/otel/exporters/stdout/stdouttrace's releases.
v1.39.0
Overview
Added
- Greatly reduce the cost of recording metrics in
go.opentelemetry.io/otel/sdk/metricusing hashing for map keys. (#7175)- Add
WithInstrumentationAttributeSetoption togo.opentelemetry.io/otel/log,go.opentelemetry.io/otel/metric, andgo.opentelemetry.io/otel/tracepackages. This provides a concurrent-safe and performant alternative toWithInstrumentationAttributesby accepting a pre-constructedattribute.Set. (#7287)- Add experimental observability for the Prometheus exporter in
go.opentelemetry.io/otel/exporters/prometheus. Check thego.opentelemetry.io/otel/exporters/prometheus/internal/xpackage documentation for more information. (#7345)- Add experimental observability metrics in
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc. (#7353)- Add temporality selector functions
DeltaTemporalitySelector,CumulativeTemporalitySelector,LowMemoryTemporalitySelectortogo.opentelemetry.io/otel/sdk/metric. (#7434)- Add experimental observability metrics for simple log processor in
go.opentelemetry.io/otel/sdk/log. (#7548)- Add experimental observability metrics in
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc. (#7459)- Add experimental observability metrics in
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#7486)- Add experimental observability metrics for simple span processor in
go.opentelemetry.io/otel/sdk/trace. (#7374)- Add experimental observability metrics in
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#7512)- Add experimental observability metrics for manual reader in
go.opentelemetry.io/otel/sdk/metric. (#7524)- Add experimental observability metrics for periodic reader in
go.opentelemetry.io/otel/sdk/metric. (#7571)- Support
OTEL_EXPORTER_OTLP_LOGS_INSECUREandOTEL_EXPORTER_OTLP_INSECUREenvironmental variables ingo.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#7608)- Add
Enabledmethod to theProcessorinterface ingo.opentelemetry.io/otel/sdk/log. AllProcessorimplementations now include anEnabledmethod. (#7639)- The
go.opentelemetry.io/otel/semconv/v1.38.0package. The package contains semantic conventions from thev1.38.0version of the OpenTelemetry Semantic Conventions. See the migration documentation for information on how to upgrade fromgo.opentelemetry.io/otel/semconv/v1.37.0.(#7648)Changed
Distinctingo.opentelemetry.io/otel/attributeis no longer guaranteed to uniquely identify an attribute set. Collisions betweenDistinctvalues for different Sets are possible with extremely high cardinality (billions of series per instrument), but are highly unlikely. (#7175)WithInstrumentationAttributesingo.opentelemetry.io/otel/tracesynchronously de-duplicates the passed attributes instead of delegating it to the returnedTracerOption. (#7266)WithInstrumentationAttributesingo.opentelemetry.io/otel/metersynchronously de-duplicates the passed attributes instead of delegating it to the returnedMeterOption. (#7266)WithInstrumentationAttributesingo.opentelemetry.io/otel/logsynchronously de-duplicates the passed attributes instead of delegating it to the returnedLoggerOption. (#7266)- Rename the
OTEL_GO_X_SELF_OBSERVABILITYenvironment variable toOTEL_GO_X_OBSERVABILITYingo.opentelemetry.io/otel/sdk/trace,go.opentelemetry.io/otel/sdk/log, andgo.opentelemetry.io/otel/exporters/stdout/stdouttrace. (#7302)- Improve performance of histogram
Recordingo.opentelemetry.io/otel/sdk/metricwhen min and max are disabled usingNoMinMax. (#7306)- Improve error handling for dropped data during translation by using
prometheus.NewInvalidMetricingo.opentelemetry.io/otel/exporters/prometheus. ⚠️ Breaking Change: Previously, these cases were only logged and scrapes succeeded. Now, when translation would drop data (e.g., invalid label/value), the exporter emits aNewInvalidMetric, and Prometheus scrapes fail with HTTP 500 by default. To preserve the prior behavior (scrapes succeed while errors are logged), configure your Prometheus HTTP handler with:promhttp.HandlerOpts{ ErrorHandling: promhttp.ContinueOnError }. (#7363)- Replace fnv hash with xxhash in
go.opentelemetry.io/otel/attributefor better performance. (#7371)- The default
TranslationStrategyingo.opentelemetry.io/exporters/prometheusis changed fromotlptranslator.NoUTF8EscapingWithSuffixestootlptranslator.UnderscoreEscapingWithSuffixes. (#7421)- Improve performance of concurrent measurements in
go.opentelemetry.io/otel/sdk/metric. (#7427)- Include W3C TraceFlags (bits 0–7) in the OTLP
Span.Flagsfield ingo.opentelemetry.io/exporters/otlp/otlptrace/otlptracehttpandgo.opentelemetry.io/exporters/otlp/otlptrace/otlptracegrpc. (#7438)- The
ErrorTypefunction ingo.opentelemetry.io/otel/semconv/v1.37.0now handles custom error types. If an error implements anErrorType() stringmethod, the return value of that method will be used as the error type. (#7442)Fixed
- Fix
WithInstrumentationAttributesoptions ingo.opentelemetry.io/otel/trace,go.opentelemetry.io/otel/metric, andgo.opentelemetry.io/otel/logto properly merge attributes when passed multiple times instead of replacing them. Attributes with duplicate keys will use the last value passed. (#7300)- The equality of
attribute.Setwhen using theEqualmethod is not affected by the user overriding the empty set pointed to byattribute.EmptySetingo.opentelemetry.io/otel/attribute. (#7357)- Return partial OTLP export errors to the caller in
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc. (#7372)- Return partial OTLP export errors to the caller in
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#7372)- Return partial OTLP export errors to the caller in
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc. (#7372)- Return partial OTLP export errors to the caller in
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp. (#7372)- Return partial OTLP export errors to the caller in
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc. (#7372)- Return partial OTLP export errors to the caller in
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#7372)- Fix
AddAttributes,SetAttributes,SetBodyonRecordingo.opentelemetry.io/otel/sdk/logto not mutate input. (#7403)- Do not double record measurements of
RecordSetmethods ingo.opentelemetry.io/otel/semconv/v1.37.0. (#7655)- Do not double record measurements of
RecordSetmethods ingo.opentelemetry.io/otel/semconv/v1.36.0. (#7656)
... (truncated)
Changelog
Sourced from go.opentelemetry.io/otel/exporters/stdout/stdouttrace's changelog.
[1.39.0/0.61.0/0.15.0/0.0.14] 2025-12-05
Added
- Greatly reduce the cost of recording metrics in
go.opentelemetry.io/otel/sdk/metricusing hashing for map keys. (#7175)- Add
WithInstrumentationAttributeSetoption togo.opentelemetry.io/otel/log,go.opentelemetry.io/otel/metric, andgo.opentelemetry.io/otel/tracepackages. This provides a concurrent-safe and performant alternative toWithInstrumentationAttributesby accepting a pre-constructedattribute.Set. (#7287)- Add experimental observability for the Prometheus exporter in
go.opentelemetry.io/otel/exporters/prometheus. Check thego.opentelemetry.io/otel/exporters/prometheus/internal/xpackage documentation for more information. (#7345)- Add experimental observability metrics in
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc. (#7353)- Add temporality selector functions
DeltaTemporalitySelector,CumulativeTemporalitySelector,LowMemoryTemporalitySelectortogo.opentelemetry.io/otel/sdk/metric. (#7434)- Add experimental observability metrics for simple log processor in
go.opentelemetry.io/otel/sdk/log. (#7548)- Add experimental observability metrics in
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc. (#7459)- Add experimental observability metrics in
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#7486)- Add experimental observability metrics for simple span processor in
go.opentelemetry.io/otel/sdk/trace. (#7374)- Add experimental observability metrics in
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#7512)- Add experimental observability metrics for manual reader in
go.opentelemetry.io/otel/sdk/metric. (#7524)- Add experimental observability metrics for periodic reader in
go.opentelemetry.io/otel/sdk/metric. (#7571)- Support
OTEL_EXPORTER_OTLP_LOGS_INSECUREandOTEL_EXPORTER_OTLP_INSECUREenvironmental variables ingo.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#7608)- Add
Enabledmethod to theProcessorinterface ingo.opentelemetry.io/otel/sdk/log. AllProcessorimplementations now include anEnabledmethod. (#7639)- The
go.opentelemetry.io/otel/semconv/v1.38.0package. The package contains semantic conventions from thev1.38.0version of the OpenTelemetry Semantic Conventions. See the migration documentation for information on how to upgrade fromgo.opentelemetry.io/otel/semconv/v1.37.0.(#7648)Changed
Distinctingo.opentelemetry.io/otel/attributeis no longer guaranteed to uniquely identify an attribute set. Collisions betweenDistinctvalues for different Sets are possible with extremely high cardinality (billions of series per instrument), but are highly unlikely. (#7175)WithInstrumentationAttributesingo.opentelemetry.io/otel/tracesynchronously de-duplicates the passed attributes instead of delegating it to the returnedTracerOption. (#7266)WithInstrumentationAttributesingo.opentelemetry.io/otel/metersynchronously de-duplicates the passed attributes instead of delegating it to the returnedMeterOption. (#7266)WithInstrumentationAttributesingo.opentelemetry.io/otel/logsynchronously de-duplicates the passed attributes instead of delegating it to the returnedLoggerOption. (#7266)- Rename the
OTEL_GO_X_SELF_OBSERVABILITYenvironment variable toOTEL_GO_X_OBSERVABILITYingo.opentelemetry.io/otel/sdk/trace,go.opentelemetry.io/otel/sdk/log, andgo.opentelemetry.io/otel/exporters/stdout/stdouttrace. (#7302)- Improve performance of histogram
Recordingo.opentelemetry.io/otel/sdk/metricwhen min and max are disabled usingNoMinMax. (#7306)- Improve error handling for dropped data during translation by using
prometheus.NewInvalidMetricingo.opentelemetry.io/otel/exporters/prometheus. ⚠️ Breaking Change: Previously, these cases were only logged and scrapes succeeded. Now, when translation would drop data (e.g., invalid label/value), the exporter emits aNewInvalidMetric, and Prometheus scrapes fail with HTTP 500 by default. To preserve the prior behavior (scrapes succeed while errors are logged), configure your Prometheus HTTP handler with:promhttp.HandlerOpts{ ErrorHandling: promhttp.ContinueOnError }. (#7363)- Replace fnv hash with xxhash in
go.opentelemetry.io/otel/attributefor better performance. (#7371)- The default
TranslationStrategyingo.opentelemetry.io/exporters/prometheusis changed fromotlptranslator.NoUTF8EscapingWithSuffixestootlptranslator.UnderscoreEscapingWithSuffixes. (#7421)- Improve performance of concurrent measurements in
go.opentelemetry.io/otel/sdk/metric. (#7427)- Include W3C TraceFlags (bits 0–7) in the OTLP
Span.Flagsfield ingo.opentelemetry.io/exporters/otlp/otlptrace/otlptracehttpandgo.opentelemetry.io/exporters/otlp/otlptrace/otlptracegrpc. (#7438)- The
ErrorTypefunction ingo.opentelemetry.io/otel/semconv/v1.37.0now handles custom error types. If an error implements anErrorType() stringmethod, the return value of that method will be used as the error type. (#7442)Fixed
- Fix
WithInstrumentationAttributesoptions ingo.opentelemetry.io/otel/trace,go.opentelemetry.io/otel/metric, andgo.opentelemetry.io/otel/logto properly merge attributes when passed multiple times instead of replacing them. Attributes with duplicate keys will use the last value passed. (#7300)- The equality of
attribute.Setwhen using theEqualmethod is not affected by the user overriding the empty set pointed to byattribute.EmptySetingo.opentelemetry.io/otel/attribute. (#7357)
... (truncated)
Commits
6ce1429Release v1.39.0 (#7676)12e421asdk/log: move Enabled method from FilterProcessor to Processor (#7639)5982f16fix(deps): update module golang.org/x/sys to v0.39.0 (#7684)9288378chore(deps): update module golang.org/x/sync to v0.19.0 (#7683)ee3dfefchore(deps): update github.com/securego/gosec/v2 digest to 41f28e2 (#7682)9345d1ffix(deps): update module github.com/golangci/golangci-lint/v2 to v2.7.2 (#7680)d03b033Check context prior to delaying retry in OTLP exporters (#7678)61765e7Fix flakyTestClientInstrumentation(#7677)a54721cchore(deps): update module github.com/go-git/go-billy/v5 to v5.7.0 (#7679)746d086chore(deps): update github/codeql-action action to v4.31.7 (#7675)- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
| Test Name | Result | Time |
|---|---|---|
| backup-enable-disable | passed | 00:07:28 |
| custom-envs | passed | 00:18:41 |
| custom-extensions | passed | 00:15:16 |
| custom-tls | passed | 00:07:00 |
| database-init-sql | passed | 00:02:22 |
| demand-backup | passed | 00:25:41 |
| finalizers | passed | 00:04:07 |
| init-deploy | passed | 00:03:07 |
| monitoring | passed | 00:08:12 |
| monitoring-pmm3 | passed | 00:09:58 |
| one-pod | passed | 00:06:22 |
| operator-self-healing | passed | 00:08:43 |
| pgvector-extension | passed | 00:02:52 |
| pitr | passed | 00:12:48 |
| scaling | failure | 00:00:42 |
| scheduled-backup | skipped | 00:00:00 |
| self-healing | skipped | 00:00:00 |
| sidecars | skipped | 00:00:00 |
| start-from-backup | skipped | 00:00:00 |
| tablespaces | skipped | 00:00:00 |
| telemetry-transfer | skipped | 00:00:00 |
| upgrade-consistency | skipped | 00:00:00 |
| upgrade-minor | skipped | 00:00:00 |
| users | skipped | 00:00:00 |
| Summary | Value |
|---|---|
| Tests Run | 15/24 |
| Job Duration | 03:13:10 |
| Total Test Time | 02:13:24 |
commit: https://github.com/percona/percona-postgresql-operator/pull/1381/commits/e59de2bc1c35d9a6feee38188343029cd062fb6b
image: perconalab/percona-postgresql-operator:PR-1381-e59de2bc1