From bbd863ff5574735de3a3d30630b7bc6cf018729c Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Wed, 3 Jul 2024 05:50:57 +0200 Subject: [PATCH] Update opentelemetry-go to v1.28.0 and refactor references to semantic conventions (#5698) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In addition to dependency upgrade: * some fixes to Makefile to install tools * move all references to versioned semconv to a helper package otelsemconv so that we don't have to keep semver in sync in many places (but we still have the linter for that). * fix otel_tag adjuster to look for the new `telemetry.sdk.*` attributes, not the deprecated `otel.library.*` * change db instrumentation to use new `db.query.text` attrs instead of deprecated `db.statement` [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [go.opentelemetry.io/otel](https://togithub.com/open-telemetry/opentelemetry-go) | `v1.27.0` -> `v1.28.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.opentelemetry.io%2fotel/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.opentelemetry.io%2fotel/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [go.opentelemetry.io/otel/exporters/otlp/otlptrace](https://togithub.com/open-telemetry/opentelemetry-go) | `v1.27.0` -> `v1.28.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc](https://togithub.com/open-telemetry/opentelemetry-go) | `v1.27.0` -> `v1.28.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracegrpc/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracegrpc/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracegrpc/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracegrpc/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp](https://togithub.com/open-telemetry/opentelemetry-go) | `v1.27.0` -> `v1.28.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracehttp/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracehttp/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracehttp/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fotlp%2fotlptrace%2fotlptracehttp/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [go.opentelemetry.io/otel/exporters/prometheus](https://togithub.com/open-telemetry/opentelemetry-go) | `v0.49.0` -> `v0.50.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fprometheus/v0.50.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.opentelemetry.io%2fotel%2fexporters%2fprometheus/v0.50.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.opentelemetry.io%2fotel%2fexporters%2fprometheus/v0.49.0/v0.50.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fprometheus/v0.49.0/v0.50.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [go.opentelemetry.io/otel/exporters/stdout/stdouttrace](https://togithub.com/open-telemetry/opentelemetry-go) | `v1.27.0` -> `v1.28.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fexporters%2fstdout%2fstdouttrace/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.opentelemetry.io%2fotel%2fexporters%2fstdout%2fstdouttrace/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.opentelemetry.io%2fotel%2fexporters%2fstdout%2fstdouttrace/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fexporters%2fstdout%2fstdouttrace/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [go.opentelemetry.io/otel/metric](https://togithub.com/open-telemetry/opentelemetry-go) | `v1.27.0` -> `v1.28.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fmetric/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.opentelemetry.io%2fotel%2fmetric/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.opentelemetry.io%2fotel%2fmetric/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fmetric/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [go.opentelemetry.io/otel/sdk](https://togithub.com/open-telemetry/opentelemetry-go) | `v1.27.0` -> `v1.28.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fsdk/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.opentelemetry.io%2fotel%2fsdk/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.opentelemetry.io%2fotel%2fsdk/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fsdk/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [go.opentelemetry.io/otel/sdk/metric](https://togithub.com/open-telemetry/opentelemetry-go) | `v1.27.0` -> `v1.28.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2fsdk%2fmetric/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.opentelemetry.io%2fotel%2fsdk%2fmetric/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.opentelemetry.io%2fotel%2fsdk%2fmetric/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2fsdk%2fmetric/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [go.opentelemetry.io/otel/trace](https://togithub.com/open-telemetry/opentelemetry-go) | `v1.27.0` -> `v1.28.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/go.opentelemetry.io%2fotel%2ftrace/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/go.opentelemetry.io%2fotel%2ftrace/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/go.opentelemetry.io%2fotel%2ftrace/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/go.opentelemetry.io%2fotel%2ftrace/v1.27.0/v1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
open-telemetry/opentelemetry-go (go.opentelemetry.io/otel) ### [`v1.28.0`](https://togithub.com/open-telemetry/opentelemetry-go/releases/tag/v1.28.0): Releases v1.28.0/v0.50.0/v0.4.0 [Compare Source](https://togithub.com/open-telemetry/opentelemetry-go/compare/v1.27.0...v1.28.0) #### Overview ##### Added - The `IsEmpty` method is added to the `Instrument` type in `go.opentelemetry.io/otel/sdk/metric`. This method is used to check if an `Instrument` instance is a zero-value. ([#​5431](https://togithub.com/open-telemetry/opentelemetry-go/issues/5431)) - Store and provide the emitted `context.Context` in `ScopeRecords` of `go.opentelemetry.io/otel/sdk/log/logtest`. ([#​5468](https://togithub.com/open-telemetry/opentelemetry-go/issues/5468)) - The `go.opentelemetry.io/otel/semconv/v1.26.0` package. The package contains semantic conventions from the `v1.26.0` version of the OpenTelemetry Semantic Conventions. ([#​5476](https://togithub.com/open-telemetry/opentelemetry-go/issues/5476)) - The `AssertRecordEqual` method to `go.opentelemetry.io/otel/log/logtest` to allow comparison of two log records in tests. ([#​5499](https://togithub.com/open-telemetry/opentelemetry-go/issues/5499)) - The `WithHeaders` option to `go.opentelemetry.io/otel/exporters/zipkin` to allow configuring custom http headers while exporting spans. ([#​5530](https://togithub.com/open-telemetry/opentelemetry-go/issues/5530)) ##### Changed - `Tracer.Start` in `go.opentelemetry.io/otel/trace/noop` no longer allocates a span for empty span context. ([#​5457](https://togithub.com/open-telemetry/opentelemetry-go/issues/5457)) - Upgrade `go.opentelemetry.io/otel/semconv/v1.25.0` to `go.opentelemetry.io/otel/semconv/v1.26.0` in `go.opentelemetry.io/otel/example/otel-collector`. ([#​5490](https://togithub.com/open-telemetry/opentelemetry-go/issues/5490)) - Upgrade `go.opentelemetry.io/otel/semconv/v1.25.0` to `go.opentelemetry.io/otel/semconv/v1.26.0` in `go.opentelemetry.io/otel/example/zipkin`. ([#​5490](https://togithub.com/open-telemetry/opentelemetry-go/issues/5490)) - Upgrade `go.opentelemetry.io/otel/semconv/v1.25.0` to `go.opentelemetry.io/otel/semconv/v1.26.0` in `go.opentelemetry.io/otel/exporters/zipkin`. ([#​5490](https://togithub.com/open-telemetry/opentelemetry-go/issues/5490)) - The exporter no longer exports the deprecated "otel.library.name" or "otel.library.version" attributes. - Upgrade `go.opentelemetry.io/otel/semconv/v1.25.0` to `go.opentelemetry.io/otel/semconv/v1.26.0` in `go.opentelemetry.io/otel/sdk/resource`. ([#​5490](https://togithub.com/open-telemetry/opentelemetry-go/issues/5490)) - Upgrade `go.opentelemetry.io/otel/semconv/v1.25.0` to `go.opentelemetry.io/otel/semconv/v1.26.0` in `go.opentelemetry.io/otel/sdk/trace`. ([#​5490](https://togithub.com/open-telemetry/opentelemetry-go/issues/5490)) - `SimpleProcessor.OnEmit` in `go.opentelemetry.io/otel/sdk/log` no longer allocates a slice which makes it possible to have a zero-allocation log processing using `SimpleProcessor`. ([#​5493](https://togithub.com/open-telemetry/opentelemetry-go/issues/5493)) - Use non-generic functions in the `Start` method of `"go.opentelemetry.io/otel/sdk/trace".Trace` to reduce memory allocation. ([#​5497](https://togithub.com/open-telemetry/opentelemetry-go/issues/5497)) - `service.instance.id` is populated for a `Resource` created with `"go.opentelemetry.io/otel/sdk/resource".Default` with a default value when `OTEL_GO_X_RESOURCE` is set. ([#​5520](https://togithub.com/open-telemetry/opentelemetry-go/issues/5520)) - Improve performance of metric instruments in `go.opentelemetry.io/otel/sdk/metric` by removing unnecessary calls to `time.Now`. ([#​5545](https://togithub.com/open-telemetry/opentelemetry-go/issues/5545)) ##### Fixed - Log a warning to the OpenTelemetry internal logger when a `Record` in `go.opentelemetry.io/otel/sdk/log` drops an attribute due to a limit being reached. ([#​5376](https://togithub.com/open-telemetry/opentelemetry-go/issues/5376)) - Identify the `Tracer` returned from the global `TracerProvider` in `go.opentelemetry.io/otel/global` with its schema URL. ([#​5426](https://togithub.com/open-telemetry/opentelemetry-go/issues/5426)) - Identify the `Meter` returned from the global `MeterProvider` in `go.opentelemetry.io/otel/global` with its schema URL. ([#​5426](https://togithub.com/open-telemetry/opentelemetry-go/issues/5426)) - Log a warning to the OpenTelemetry internal logger when a `Span` in `go.opentelemetry.io/otel/sdk/trace` drops an attribute, event, or link due to a limit being reached. ([#​5434](https://togithub.com/open-telemetry/opentelemetry-go/issues/5434)) - Document instrument name requirements in `go.opentelemetry.io/otel/metric`. ([#​5435](https://togithub.com/open-telemetry/opentelemetry-go/issues/5435)) - Prevent random number generation data-race for experimental rand exemplars in `go.opentelemetry.io/otel/sdk/metric`. ([#​5456](https://togithub.com/open-telemetry/opentelemetry-go/issues/5456)) - Fix counting number of dropped attributes of `Record` in `go.opentelemetry.io/otel/sdk/log`. ([#​5464](https://togithub.com/open-telemetry/opentelemetry-go/issues/5464)) - Fix panic in baggage creation when a member contains `0x80` char in key or value. ([#​5494](https://togithub.com/open-telemetry/opentelemetry-go/issues/5494)) - Correct comments for the priority of the `WithEndpoint` and `WithEndpointURL` options and their corresponding environment variables in `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc`. ([#​5508](https://togithub.com/open-telemetry/opentelemetry-go/issues/5508)) - Retry trace and span ID generation if it generated an invalid one in `go.opentelemetry.io/otel/sdk/trace`. ([#​5514](https://togithub.com/open-telemetry/opentelemetry-go/issues/5514)) - Fix stale timestamps reported by the last-value aggregation. ([#​5517](https://togithub.com/open-telemetry/opentelemetry-go/issues/5517)) - Indicate the `Exporter` in `go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp` must be created by the `New` method. ([#​5521](https://togithub.com/open-telemetry/opentelemetry-go/issues/5521)) - Improved performance in all `{Bool,Int64,Float64,String}SliceValue` functions of `go.opentelemetry.io/attributes` by reducing the number of allocations. ([#​5549](https://togithub.com/open-telemetry/opentelemetry-go/issues/5549)) #### What's Changed - Recheck log message in TestBatchProcessor by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5386](https://togithub.com/open-telemetry/opentelemetry-go/pull/5386) - chore(deps): update google.golang.org/genproto/googleapis/rpc digest to [`dc85e6b`](https://togithub.com/open-telemetry/opentelemetry-go/commit/dc85e6b) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5391](https://togithub.com/open-telemetry/opentelemetry-go/pull/5391) - fix(deps): update module go.opentelemetry.io/contrib/bridges/otelslog to v0.2.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5395](https://togithub.com/open-telemetry/opentelemetry-go/pull/5395) - fix(deps): update module github.com/go-logr/logr to v1.4.2 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5393](https://togithub.com/open-telemetry/opentelemetry-go/pull/5393) - fix(deps): update module go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp to v0.52.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5396](https://togithub.com/open-telemetry/opentelemetry-go/pull/5396) - chore(deps): update google.golang.org/genproto/googleapis/api digest to [`d264139`](https://togithub.com/open-telemetry/opentelemetry-go/commit/d264139) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5397](https://togithub.com/open-telemetry/opentelemetry-go/pull/5397) - fix(deps): update module go.opentelemetry.io/otel/sdk/log to v0.3.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5398](https://togithub.com/open-telemetry/opentelemetry-go/pull/5398) - chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.101.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5400](https://togithub.com/open-telemetry/opentelemetry-go/pull/5400) - chore(deps): update google.golang.org/genproto/googleapis/rpc digest to [`d264139`](https://togithub.com/open-telemetry/opentelemetry-go/commit/d264139) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5399](https://togithub.com/open-telemetry/opentelemetry-go/pull/5399) - \[chore] example/otel-collector: Fix README title by [@​pellared](https://togithub.com/pellared) in [https://github.com/open-telemetry/opentelemetry-go/pull/5404](https://togithub.com/open-telemetry/opentelemetry-go/pull/5404) - Pool `otlploghttp` transform maps by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5378](https://togithub.com/open-telemetry/opentelemetry-go/pull/5378) - fix(deps): update module golang.org/x/vuln to v1.1.1 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5405](https://togithub.com/open-telemetry/opentelemetry-go/pull/5405) - Fix test name in otlploghttp by [@​XSAM](https://togithub.com/XSAM) in [https://github.com/open-telemetry/opentelemetry-go/pull/5411](https://togithub.com/open-telemetry/opentelemetry-go/pull/5411) - sdk/log: Fix BenchmarkLoggerNewRecord to not drop attributes by [@​pellared](https://togithub.com/pellared) in [https://github.com/open-telemetry/opentelemetry-go/pull/5407](https://togithub.com/open-telemetry/opentelemetry-go/pull/5407) - chore(deps): update dependency codespell to v2.3.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5409](https://togithub.com/open-telemetry/opentelemetry-go/pull/5409) - fix(deps): update module github.com/golangci/golangci-lint to v1.59.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5419](https://togithub.com/open-telemetry/opentelemetry-go/pull/5419) - fix(deps): update golang.org/x/tools digest to [`7045d2e`](https://togithub.com/open-telemetry/opentelemetry-go/commit/7045d2e) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5406](https://togithub.com/open-telemetry/opentelemetry-go/pull/5406) - fix(deps): update golang.org/x/exp digest to [`4c93da0`](https://togithub.com/open-telemetry/opentelemetry-go/commit/4c93da0) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5415](https://togithub.com/open-telemetry/opentelemetry-go/pull/5415) - Log a warning when log Record attribute is dropped by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5376](https://togithub.com/open-telemetry/opentelemetry-go/pull/5376) - chore(deps): update google.golang.org/genproto/googleapis/rpc digest to [`a332354`](https://togithub.com/open-telemetry/opentelemetry-go/commit/a332354) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5424](https://togithub.com/open-telemetry/opentelemetry-go/pull/5424) - chore(deps): update google.golang.org/genproto/googleapis/api digest to [`a332354`](https://togithub.com/open-telemetry/opentelemetry-go/commit/a332354) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5423](https://togithub.com/open-telemetry/opentelemetry-go/pull/5423) - fix(deps): update golang.org/x/tools digest to [`f10a0f1`](https://togithub.com/open-telemetry/opentelemetry-go/commit/f10a0f1) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5430](https://togithub.com/open-telemetry/opentelemetry-go/pull/5430) - chore(deps): update google.golang.org/genproto/googleapis/rpc digest to [`5315273`](https://togithub.com/open-telemetry/opentelemetry-go/commit/5315273) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5428](https://togithub.com/open-telemetry/opentelemetry-go/pull/5428) - chore(deps): update google.golang.org/genproto/googleapis/api digest to [`5315273`](https://togithub.com/open-telemetry/opentelemetry-go/commit/5315273) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5427](https://togithub.com/open-telemetry/opentelemetry-go/pull/5427) - fix(deps): update golang.org/x/tools digest to [`e229045`](https://togithub.com/open-telemetry/opentelemetry-go/commit/e229045) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5432](https://togithub.com/open-telemetry/opentelemetry-go/pull/5432) - fix(deps): update golang.org/x/exp digest to [`23cca88`](https://togithub.com/open-telemetry/opentelemetry-go/commit/23cca88) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5429](https://togithub.com/open-telemetry/opentelemetry-go/pull/5429) - sdk/log: Fix TestBatchProcessor/DroppedLogs flaky test by [@​amanakin](https://togithub.com/amanakin) in [https://github.com/open-telemetry/opentelemetry-go/pull/5421](https://togithub.com/open-telemetry/opentelemetry-go/pull/5421) - Identify global `Tracer`s and `Meter`s with their schema URLs by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5426](https://togithub.com/open-telemetry/opentelemetry-go/pull/5426) - sdk/log: Fix TestBatchProcessor/ForceFlush/ErrorPartialFlush flaky test by [@​amanakin](https://togithub.com/amanakin) in [https://github.com/open-telemetry/opentelemetry-go/pull/5416](https://togithub.com/open-telemetry/opentelemetry-go/pull/5416) - Export the Instrument IsEmpty method by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5431](https://togithub.com/open-telemetry/opentelemetry-go/pull/5431) - fix(deps): update golang.org/x/tools digest to [`01018ba`](https://togithub.com/open-telemetry/opentelemetry-go/commit/01018ba) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5438](https://togithub.com/open-telemetry/opentelemetry-go/pull/5438) - \[chore] ensure codecov uses token by [@​codeboten](https://togithub.com/codeboten) in [https://github.com/open-telemetry/opentelemetry-go/pull/5440](https://togithub.com/open-telemetry/opentelemetry-go/pull/5440) - fix(deps): update golang.org/x/tools digest to [`8d54ca1`](https://togithub.com/open-telemetry/opentelemetry-go/commit/8d54ca1) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5441](https://togithub.com/open-telemetry/opentelemetry-go/pull/5441) - fix(deps): update golang.org/x/tools digest to [`2e977dd`](https://togithub.com/open-telemetry/opentelemetry-go/commit/2e977dd) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5442](https://togithub.com/open-telemetry/opentelemetry-go/pull/5442) - Remove zeroInstrumentKind by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5433](https://togithub.com/open-telemetry/opentelemetry-go/pull/5433) - Log warning when a trace attribute/event/link is discarded due to limits by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5434](https://togithub.com/open-telemetry/opentelemetry-go/pull/5434) - Remove opentelemetry-proto in .gitsubmodule by [@​YHM404](https://togithub.com/YHM404) in [https://github.com/open-telemetry/opentelemetry-go/pull/5267](https://togithub.com/open-telemetry/opentelemetry-go/pull/5267) - Document instrument name requirements by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5435](https://togithub.com/open-telemetry/opentelemetry-go/pull/5435) - fix(deps): update golang.org/x/exp digest to [`404ba88`](https://togithub.com/open-telemetry/opentelemetry-go/commit/404ba88) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5445](https://togithub.com/open-telemetry/opentelemetry-go/pull/5445) - Move `MonotonicEndTime` to only use by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5443](https://togithub.com/open-telemetry/opentelemetry-go/pull/5443) - fix(deps): update golang.org/x/tools digest to [`624dbd0`](https://togithub.com/open-telemetry/opentelemetry-go/commit/624dbd0) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5446](https://togithub.com/open-telemetry/opentelemetry-go/pull/5446) - fix(deps): update golang.org/x/exp digest to [`fd00a4e`](https://togithub.com/open-telemetry/opentelemetry-go/commit/fd00a4e) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5450](https://togithub.com/open-telemetry/opentelemetry-go/pull/5450) - fix(deps): update golang.org/x/tools digest to [`2f8e378`](https://togithub.com/open-telemetry/opentelemetry-go/commit/2f8e378) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5451](https://togithub.com/open-telemetry/opentelemetry-go/pull/5451) - fix(deps): update golang.org/x/tools digest to [`cc29c91`](https://togithub.com/open-telemetry/opentelemetry-go/commit/cc29c91) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5452](https://togithub.com/open-telemetry/opentelemetry-go/pull/5452) - chore(deps): update module github.com/prometheus/procfs to v0.15.1 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5453](https://togithub.com/open-telemetry/opentelemetry-go/pull/5453) - sdk/log: Add processor benchmarks by [@​pellared](https://togithub.com/pellared) in [https://github.com/open-telemetry/opentelemetry-go/pull/5448](https://togithub.com/open-telemetry/opentelemetry-go/pull/5448) - fix(deps): update module github.com/itchyny/gojq to v0.12.16 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5460](https://togithub.com/open-telemetry/opentelemetry-go/pull/5460) - Guard rng in exemplar rand computation by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5456](https://togithub.com/open-telemetry/opentelemetry-go/pull/5456) - chore(deps): update module github.com/prometheus/common to v0.54.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5472](https://togithub.com/open-telemetry/opentelemetry-go/pull/5472) - add `log` package to depguard linter by [@​amanakin](https://togithub.com/amanakin) in [https://github.com/open-telemetry/opentelemetry-go/pull/5463](https://togithub.com/open-telemetry/opentelemetry-go/pull/5463) - fix(deps): update golang.org/x/tools digest to [`58cc8a4`](https://togithub.com/open-telemetry/opentelemetry-go/commit/58cc8a4) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5473](https://togithub.com/open-telemetry/opentelemetry-go/pull/5473) - fix(deps): update golang.org/x/tools digest to [`4478db0`](https://togithub.com/open-telemetry/opentelemetry-go/commit/4478db0) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5474](https://togithub.com/open-telemetry/opentelemetry-go/pull/5474) - sdk/log: Fix counting number of dropped attributes of log `Record` by [@​amanakin](https://togithub.com/amanakin) in [https://github.com/open-telemetry/opentelemetry-go/pull/5464](https://togithub.com/open-telemetry/opentelemetry-go/pull/5464) - fix(deps): update golang.org/x/tools digest to [`2088083`](https://togithub.com/open-telemetry/opentelemetry-go/commit/2088083) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5477](https://togithub.com/open-telemetry/opentelemetry-go/pull/5477) - trace: Span in noop.Start is no longer allocated by [@​tttoad](https://togithub.com/tttoad) in [https://github.com/open-telemetry/opentelemetry-go/pull/5457](https://togithub.com/open-telemetry/opentelemetry-go/pull/5457) - chore(deps): update module golang.org/x/sys to v0.21.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5481](https://togithub.com/open-telemetry/opentelemetry-go/pull/5481) - fix(deps): update module golang.org/x/tools to v0.22.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5485](https://togithub.com/open-telemetry/opentelemetry-go/pull/5485) - Bump min Go version used in CI by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5489](https://togithub.com/open-telemetry/opentelemetry-go/pull/5489) - chore(deps): update module golang.org/x/text to v0.16.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5482](https://togithub.com/open-telemetry/opentelemetry-go/pull/5482) - Add `semconv/v1.26.0`, removes deprecated semconvs by [@​MadVikingGod](https://togithub.com/MadVikingGod) in [https://github.com/open-telemetry/opentelemetry-go/pull/5476](https://togithub.com/open-telemetry/opentelemetry-go/pull/5476) - Add the sdk/internal/x package by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5444](https://togithub.com/open-telemetry/opentelemetry-go/pull/5444) - chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.102.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5479](https://togithub.com/open-telemetry/opentelemetry-go/pull/5479) - chore(deps): update module golang.org/x/net to v0.26.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5484](https://togithub.com/open-telemetry/opentelemetry-go/pull/5484) - chore(deps): update google.golang.org/genproto/googleapis/api digest to [`ef581f9`](https://togithub.com/open-telemetry/opentelemetry-go/commit/ef581f9) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5486](https://togithub.com/open-telemetry/opentelemetry-go/pull/5486) - chore(deps): update google.golang.org/genproto/googleapis/rpc digest to [`ef581f9`](https://togithub.com/open-telemetry/opentelemetry-go/commit/ef581f9) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5487](https://togithub.com/open-telemetry/opentelemetry-go/pull/5487) - fix(deps): update golang.org/x/exp digest to [`fc45aab`](https://togithub.com/open-telemetry/opentelemetry-go/commit/fc45aab) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5488](https://togithub.com/open-telemetry/opentelemetry-go/pull/5488) - log/logtest: provide record with their context by [@​dmathieu](https://togithub.com/dmathieu) in [https://github.com/open-telemetry/opentelemetry-go/pull/5468](https://togithub.com/open-telemetry/opentelemetry-go/pull/5468) - Upgrade semconv use to v1.26.0 by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5490](https://togithub.com/open-telemetry/opentelemetry-go/pull/5490) - sdk/log: Remove slice allocation from SimpleProcessor.OnEmit by [@​pellared](https://togithub.com/pellared) in [https://github.com/open-telemetry/opentelemetry-go/pull/5493](https://togithub.com/open-telemetry/opentelemetry-go/pull/5493) - fix(deps): update module golang.org/x/vuln to v1.1.2 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5496](https://togithub.com/open-telemetry/opentelemetry-go/pull/5496) - fix(deps): update module github.com/golangci/golangci-lint to v1.59.1 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5498](https://togithub.com/open-telemetry/opentelemetry-go/pull/5498) - chore(deps): update google.golang.org/genproto/googleapis/api digest to [`a8a6208`](https://togithub.com/open-telemetry/opentelemetry-go/commit/a8a6208) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5501](https://togithub.com/open-telemetry/opentelemetry-go/pull/5501) - Introduce logtest.AssertRecordEqual by [@​dmathieu](https://togithub.com/dmathieu) in [https://github.com/open-telemetry/opentelemetry-go/pull/5499](https://togithub.com/open-telemetry/opentelemetry-go/pull/5499) - Add implementation of otlploggrpc configuration by [@​XSAM](https://togithub.com/XSAM) in [https://github.com/open-telemetry/opentelemetry-go/pull/5383](https://togithub.com/open-telemetry/opentelemetry-go/pull/5383) - fix(deps): update golang.org/x/exp digest to [`7f521ea`](https://togithub.com/open-telemetry/opentelemetry-go/commit/7f521ea) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5512](https://togithub.com/open-telemetry/opentelemetry-go/pull/5512) - Move evantorrie to emeritus status by [@​evantorrie](https://togithub.com/evantorrie) in [https://github.com/open-telemetry/opentelemetry-go/pull/5507](https://togithub.com/open-telemetry/opentelemetry-go/pull/5507) - Add missing word in WithView() doc string by [@​juliusv](https://togithub.com/juliusv) in [https://github.com/open-telemetry/opentelemetry-go/pull/5506](https://togithub.com/open-telemetry/opentelemetry-go/pull/5506) - chore(deps): update codecov/codecov-action action to v4.5.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5509](https://togithub.com/open-telemetry/opentelemetry-go/pull/5509) - chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.102.1 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5491](https://togithub.com/open-telemetry/opentelemetry-go/pull/5491) - chore(deps): update google.golang.org/genproto/googleapis/rpc digest to [`a8a6208`](https://togithub.com/open-telemetry/opentelemetry-go/commit/a8a6208) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5502](https://togithub.com/open-telemetry/opentelemetry-go/pull/5502) - fix(deps): update module google.golang.org/protobuf to v1.34.2 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5503](https://togithub.com/open-telemetry/opentelemetry-go/pull/5503) - trace: Use non-generic to replace newEvictedQueue in trace.start to reduce memory usage. by [@​tttoad](https://togithub.com/tttoad) in [https://github.com/open-telemetry/opentelemetry-go/pull/5497](https://togithub.com/open-telemetry/opentelemetry-go/pull/5497) - chore(deps): update jaegertracing/all-in-one docker tag to v1.58 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5504](https://togithub.com/open-telemetry/opentelemetry-go/pull/5504) - fix(deps): update module go.opentelemetry.io/proto/otlp to v1.3.1 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5505](https://togithub.com/open-telemetry/opentelemetry-go/pull/5505) - fix(baggage): validate chars panic with 0x80 by [@​fabiobozzo](https://togithub.com/fabiobozzo) in [https://github.com/open-telemetry/opentelemetry-go/pull/5494](https://togithub.com/open-telemetry/opentelemetry-go/pull/5494) - chore(deps): update google.golang.org/genproto/googleapis/rpc digest to [`68d350f`](https://togithub.com/open-telemetry/opentelemetry-go/commit/68d350f) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5516](https://togithub.com/open-telemetry/opentelemetry-go/pull/5516) - chore(deps): update google.golang.org/genproto/googleapis/api digest to [`68d350f`](https://togithub.com/open-telemetry/opentelemetry-go/commit/68d350f) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5515](https://togithub.com/open-telemetry/opentelemetry-go/pull/5515) - Correct the comment for the priority of options and environments on otlptracegrpc by [@​XSAM](https://togithub.com/XSAM) in [https://github.com/open-telemetry/opentelemetry-go/pull/5508](https://togithub.com/open-telemetry/opentelemetry-go/pull/5508) - Fix IDGenerator may generate zero TraceId / SpanId by [@​Charlie-lizhihan](https://togithub.com/Charlie-lizhihan) in [https://github.com/open-telemetry/opentelemetry-go/pull/5514](https://togithub.com/open-telemetry/opentelemetry-go/pull/5514) - Fix timestamp handling for the lastvalue aggregation by [@​dashpole](https://togithub.com/dashpole) in [https://github.com/open-telemetry/opentelemetry-go/pull/5517](https://togithub.com/open-telemetry/opentelemetry-go/pull/5517) - Add tenv linter by [@​dmathieu](https://togithub.com/dmathieu) in [https://github.com/open-telemetry/opentelemetry-go/pull/5524](https://togithub.com/open-telemetry/opentelemetry-go/pull/5524) - chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.103.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5526](https://togithub.com/open-telemetry/opentelemetry-go/pull/5526) - chore(deps): update prom/prometheus docker tag to v2.53.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5525](https://togithub.com/open-telemetry/opentelemetry-go/pull/5525) - Do not fail CI on codecov create report by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5532](https://togithub.com/open-telemetry/opentelemetry-go/pull/5532) - Add unconvert linter by [@​dmathieu](https://togithub.com/dmathieu) in [https://github.com/open-telemetry/opentelemetry-go/pull/5529](https://togithub.com/open-telemetry/opentelemetry-go/pull/5529) - Add unparam linter by [@​dmathieu](https://togithub.com/dmathieu) in [https://github.com/open-telemetry/opentelemetry-go/pull/5531](https://togithub.com/open-telemetry/opentelemetry-go/pull/5531) - Add example for synchronous gauge by [@​bagmeg](https://togithub.com/bagmeg) in [https://github.com/open-telemetry/opentelemetry-go/pull/5492](https://togithub.com/open-telemetry/opentelemetry-go/pull/5492) - Add `newClient` method for otlploggrpc gRPC client by [@​XSAM](https://togithub.com/XSAM) in [https://github.com/open-telemetry/opentelemetry-go/pull/5523](https://togithub.com/open-telemetry/opentelemetry-go/pull/5523) - Verify versions.yaml is up to date in CI by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5533](https://togithub.com/open-telemetry/opentelemetry-go/pull/5533) - Populate `service.instance.id` with a default value when `OTEL_GO_X_RESOURCE` is set by [@​pyohannes](https://togithub.com/pyohannes) in [https://github.com/open-telemetry/opentelemetry-go/pull/5520](https://togithub.com/open-telemetry/opentelemetry-go/pull/5520) - chore(deps): update google.golang.org/genproto/googleapis/api digest to [`dc46fd2`](https://togithub.com/open-telemetry/opentelemetry-go/commit/dc46fd2) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5538](https://togithub.com/open-telemetry/opentelemetry-go/pull/5538) - chore(deps): update google.golang.org/genproto/googleapis/rpc digest to [`dc46fd2`](https://togithub.com/open-telemetry/opentelemetry-go/commit/dc46fd2) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5539](https://togithub.com/open-telemetry/opentelemetry-go/pull/5539) - chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.103.1 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5540](https://togithub.com/open-telemetry/opentelemetry-go/pull/5540) - Decouple codecov upload from coverage testing by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5534](https://togithub.com/open-telemetry/opentelemetry-go/pull/5534) - Add errorlint linter by [@​dmathieu](https://togithub.com/dmathieu) in [https://github.com/open-telemetry/opentelemetry-go/pull/5535](https://togithub.com/open-telemetry/opentelemetry-go/pull/5535) - Add WithHeaders option for Zipkin exporter by [@​srijan-27](https://togithub.com/srijan-27) in [https://github.com/open-telemetry/opentelemetry-go/pull/5530](https://togithub.com/open-telemetry/opentelemetry-go/pull/5530) - chore(deps): update module github.com/prometheus/common to v0.55.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5552](https://togithub.com/open-telemetry/opentelemetry-go/pull/5552) - Indicate the otlploghttp exporter must be created by the New method by [@​XSAM](https://togithub.com/XSAM) in [https://github.com/open-telemetry/opentelemetry-go/pull/5521](https://togithub.com/open-telemetry/opentelemetry-go/pull/5521) - sdk/log: Add altering Processor example by [@​pellared](https://togithub.com/pellared) in [https://github.com/open-telemetry/opentelemetry-go/pull/5550](https://togithub.com/open-telemetry/opentelemetry-go/pull/5550) - Split the set and add attributes benchmarks by [@​dmathieu](https://togithub.com/dmathieu) in [https://github.com/open-telemetry/opentelemetry-go/pull/5546](https://togithub.com/open-telemetry/opentelemetry-go/pull/5546) - Add walk attributes benchmark by [@​dmathieu](https://togithub.com/dmathieu) in [https://github.com/open-telemetry/opentelemetry-go/pull/5547](https://togithub.com/open-telemetry/opentelemetry-go/pull/5547) - Add benchmark retrieving a new logger by [@​dmathieu](https://togithub.com/dmathieu) in [https://github.com/open-telemetry/opentelemetry-go/pull/5548](https://togithub.com/open-telemetry/opentelemetry-go/pull/5548) - chore(deps): update jaegertracing/all-in-one docker tag to v1.54 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5555](https://togithub.com/open-telemetry/opentelemetry-go/pull/5555) - chore(deps): update jaegertracing/all-in-one docker tag to v1.58 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5556](https://togithub.com/open-telemetry/opentelemetry-go/pull/5556) - Reduces allocation in attributes by [@​Succo](https://togithub.com/Succo) in [https://github.com/open-telemetry/opentelemetry-go/pull/5549](https://togithub.com/open-telemetry/opentelemetry-go/pull/5549) - Generate `internal/transform` in `otlploggrpc` by [@​XSAM](https://togithub.com/XSAM) in [https://github.com/open-telemetry/opentelemetry-go/pull/5553](https://togithub.com/open-telemetry/opentelemetry-go/pull/5553) - Split the span start/end benchmarks and test start with links and attributes by [@​dmathieu](https://togithub.com/dmathieu) in [https://github.com/open-telemetry/opentelemetry-go/pull/5554](https://togithub.com/open-telemetry/opentelemetry-go/pull/5554) - sdk/log: Fix ExampleProcessor_redact to clone the record by [@​pellared](https://togithub.com/pellared) in [https://github.com/open-telemetry/opentelemetry-go/pull/5559](https://togithub.com/open-telemetry/opentelemetry-go/pull/5559) - sdk/log: Add filtering Processor example by [@​pellared](https://togithub.com/pellared) in [https://github.com/open-telemetry/opentelemetry-go/pull/5543](https://togithub.com/open-telemetry/opentelemetry-go/pull/5543) - chore(deps): update google.golang.org/genproto/googleapis/api digest to [`f6361c8`](https://togithub.com/open-telemetry/opentelemetry-go/commit/f6361c8) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5563](https://togithub.com/open-telemetry/opentelemetry-go/pull/5563) - chore(deps): update google.golang.org/genproto/googleapis/rpc digest to [`f6361c8`](https://togithub.com/open-telemetry/opentelemetry-go/commit/f6361c8) by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5564](https://togithub.com/open-telemetry/opentelemetry-go/pull/5564) - Move time.Now call into exemplar reservoir to improve performance by [@​dashpole](https://togithub.com/dashpole) in [https://github.com/open-telemetry/opentelemetry-go/pull/5545](https://togithub.com/open-telemetry/opentelemetry-go/pull/5545) - chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.104.0 by [@​renovate](https://togithub.com/renovate) in [https://github.com/open-telemetry/opentelemetry-go/pull/5565](https://togithub.com/open-telemetry/opentelemetry-go/pull/5565) - Add [@​XSAM](https://togithub.com/XSAM) and [@​dmathieu](https://togithub.com/dmathieu) as repository maintainers by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5558](https://togithub.com/open-telemetry/opentelemetry-go/pull/5558) - Releases v1.28.0/v0.50.0/v0.4.0 by [@​MrAlias](https://togithub.com/MrAlias) in [https://github.com/open-telemetry/opentelemetry-go/pull/5569](https://togithub.com/open-telemetry/opentelemetry-go/pull/5569) #### New Contributors - [@​YHM404](https://togithub.com/YHM404) made their first contribution in [https://github.com/open-telemetry/opentelemetry-go/pull/5267](https://togithub.com/open-telemetry/opentelemetry-go/pull/5267) - [@​juliusv](https://togithub.com/juliusv) made their first contribution in [https://github.com/open-telemetry/opentelemetry-go/pull/5506](https://togithub.com/open-telemetry/opentelemetry-go/pull/5506) - [@​fabiobozzo](https://togithub.com/fabiobozzo) made their first contribution in [https://github.com/open-telemetry/opentelemetry-go/pull/5494](https://togithub.com/open-telemetry/opentelemetry-go/pull/5494) - [@​Charlie-lizhihan](https://togithub.com/Charlie-lizhihan) made their first contribution in [https://github.com/open-telemetry/opentelemetry-go/pull/5514](https://togithub.com/open-telemetry/opentelemetry-go/pull/5514) - [@​bagmeg](https://togithub.com/bagmeg) made their first contribution in [https://github.com/open-telemetry/opentelemetry-go/pull/5492](https://togithub.com/open-telemetry/opentelemetry-go/pull/5492) - [@​pyohannes](https://togithub.com/pyohannes) made their first contribution in [https://github.com/open-telemetry/opentelemetry-go/pull/5520](https://togithub.com/open-telemetry/opentelemetry-go/pull/5520) - [@​srijan-27](https://togithub.com/srijan-27) made their first contribution in [https://github.com/open-telemetry/opentelemetry-go/pull/5530](https://togithub.com/open-telemetry/opentelemetry-go/pull/5530) - [@​Succo](https://togithub.com/Succo) made their first contribution in [https://github.com/open-telemetry/opentelemetry-go/pull/5549](https://togithub.com/open-telemetry/opentelemetry-go/pull/5549) **Full Changelog**: https://github.com/open-telemetry/opentelemetry-go/compare/v1.27.0...v1.28.0
--- ### Configuration 📅 **Schedule**: 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://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/jaegertracing/jaeger). --------- Signed-off-by: Mend Renovate Signed-off-by: Yuri Shkuro Co-authored-by: Yuri Shkuro Co-authored-by: Yuri Shkuro --- Makefile | 6 +- cmd/tracegen/main.go | 6 +- examples/hotrod/pkg/tracing/init.go | 6 +- .../hotrod/pkg/tracing/rpcmetrics/observer.go | 4 +- .../pkg/tracing/rpcmetrics/observer_test.go | 8 +-- examples/hotrod/services/customer/database.go | 4 +- go.mod | 30 +++++----- go.sum | 56 +++++++++---------- model/adjuster/otel_tag.go | 10 ++-- model/adjuster/otel_tag_test.go | 17 ++++-- pkg/jtracer/jtracer.go | 7 ++- pkg/otelsemconv/empty_test.go | 14 +++++ pkg/otelsemconv/semconv.go | 29 ++++++++++ .../metrics/prometheus/metricsstore/reader.go | 6 +- plugin/storage/cassandra/spanstore/reader.go | 6 +- 15 files changed, 131 insertions(+), 78 deletions(-) create mode 100644 pkg/otelsemconv/empty_test.go create mode 100644 pkg/otelsemconv/semconv.go diff --git a/Makefile b/Makefile index b4d181e2e2c..eaf9228b29b 100644 --- a/Makefile +++ b/Makefile @@ -177,7 +177,7 @@ goleak: @scripts/check-goleak-files.sh $(ALL_PKGS) .PHONY: fmt -fmt: +fmt: $(GOFUMPT) @echo Running import-order-cleanup on ALL_SRC ... @./scripts/import-order-cleanup.py -o inplace -t $(ALL_SRC) @echo Running gofmt on ALL_SRC ... @@ -188,13 +188,13 @@ fmt: @./scripts/updateLicense.py $(ALL_SRC) .PHONY: lint -lint: goleak - $(LINT) -v run +lint: $(LINT) goleak @./scripts/updateLicense.py $(ALL_SRC) > $(FMT_LOG) @./scripts/import-order-cleanup.py -o stdout -t $(ALL_SRC) > $(IMPORT_LOG) @[ ! -s "$(FMT_LOG)" -a ! -s "$(IMPORT_LOG)" ] || (echo "License check or import ordering failures, run 'make fmt'" | cat - $(FMT_LOG) $(IMPORT_LOG) && false) ./scripts/check-semconv-version.sh ./scripts/check-go-version.sh + $(LINT) -v run .PHONY: build-examples build-examples: diff --git a/cmd/tracegen/main.go b/cmd/tracegen/main.go index 7d0c49c2eef..30b70411078 100644 --- a/cmd/tracegen/main.go +++ b/cmd/tracegen/main.go @@ -29,13 +29,13 @@ import ( "go.opentelemetry.io/otel/propagation" "go.opentelemetry.io/otel/sdk/resource" sdktrace "go.opentelemetry.io/otel/sdk/trace" - semconv "go.opentelemetry.io/otel/semconv/v1.25.0" "go.opentelemetry.io/otel/trace" "go.uber.org/zap" "go.uber.org/zap/zapcore" "github.com/jaegertracing/jaeger/internal/jaegerclientenv2otel" "github.com/jaegertracing/jaeger/internal/tracegen" + "github.com/jaegertracing/jaeger/pkg/otelsemconv" "github.com/jaegertracing/jaeger/pkg/version" ) @@ -84,8 +84,8 @@ func createTracers(cfg *tracegen.Config, logger *zap.Logger) ([]trace.Tracer, fu res, err := resource.New( context.Background(), - resource.WithSchemaURL(semconv.SchemaURL), - resource.WithAttributes(semconv.ServiceNameKey.String(svc)), + resource.WithSchemaURL(otelsemconv.SchemaURL), + resource.WithAttributes(otelsemconv.ServiceNameKey.String(svc)), resource.WithTelemetrySDK(), resource.WithHost(), resource.WithOSType(), diff --git a/examples/hotrod/pkg/tracing/init.go b/examples/hotrod/pkg/tracing/init.go index 994cb22dddb..a4a07ccebdd 100644 --- a/examples/hotrod/pkg/tracing/init.go +++ b/examples/hotrod/pkg/tracing/init.go @@ -31,13 +31,13 @@ import ( "go.opentelemetry.io/otel/propagation" "go.opentelemetry.io/otel/sdk/resource" sdktrace "go.opentelemetry.io/otel/sdk/trace" - semconv "go.opentelemetry.io/otel/semconv/v1.25.0" "go.opentelemetry.io/otel/trace" "go.uber.org/zap" "github.com/jaegertracing/jaeger/examples/hotrod/pkg/log" "github.com/jaegertracing/jaeger/examples/hotrod/pkg/tracing/rpcmetrics" "github.com/jaegertracing/jaeger/pkg/metrics" + "github.com/jaegertracing/jaeger/pkg/otelsemconv" ) var once sync.Once @@ -62,8 +62,8 @@ func InitOTEL(serviceName string, exporterType string, metricsFactory metrics.Fa res, err := resource.New( context.Background(), - resource.WithSchemaURL(semconv.SchemaURL), - resource.WithAttributes(semconv.ServiceNameKey.String(serviceName)), + resource.WithSchemaURL(otelsemconv.SchemaURL), + resource.WithAttributes(otelsemconv.ServiceNameKey.String(serviceName)), resource.WithTelemetrySDK(), resource.WithHost(), resource.WithOSType(), diff --git a/examples/hotrod/pkg/tracing/rpcmetrics/observer.go b/examples/hotrod/pkg/tracing/rpcmetrics/observer.go index 0b3702b53c5..3035993620d 100644 --- a/examples/hotrod/pkg/tracing/rpcmetrics/observer.go +++ b/examples/hotrod/pkg/tracing/rpcmetrics/observer.go @@ -22,10 +22,10 @@ import ( "go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/codes" sdktrace "go.opentelemetry.io/otel/sdk/trace" - semconv "go.opentelemetry.io/otel/semconv/v1.25.0" "go.opentelemetry.io/otel/trace" "github.com/jaegertracing/jaeger/pkg/metrics" + "github.com/jaegertracing/jaeger/pkg/otelsemconv" ) const defaultMaxNumberOfEndpoints = 200 @@ -70,7 +70,7 @@ func (o *Observer) OnEnd(sp sdktrace.ReadOnlySpan) { mets.RequestLatencySuccess.Record(latency) } for _, attr := range sp.Attributes() { - if string(attr.Key) == string(semconv.HTTPResponseStatusCodeKey) { + if string(attr.Key) == string(otelsemconv.HTTPResponseStatusCodeKey) { if attr.Value.Type() == attribute.INT64 { mets.recordHTTPStatusCode(attr.Value.AsInt64()) } else if attr.Value.Type() == attribute.STRING { diff --git a/examples/hotrod/pkg/tracing/rpcmetrics/observer_test.go b/examples/hotrod/pkg/tracing/rpcmetrics/observer_test.go index 27fbb84722e..59af4e665b5 100644 --- a/examples/hotrod/pkg/tracing/rpcmetrics/observer_test.go +++ b/examples/hotrod/pkg/tracing/rpcmetrics/observer_test.go @@ -26,10 +26,10 @@ import ( "go.opentelemetry.io/otel/codes" "go.opentelemetry.io/otel/sdk/resource" sdktrace "go.opentelemetry.io/otel/sdk/trace" - semconv "go.opentelemetry.io/otel/semconv/v1.25.0" "go.opentelemetry.io/otel/trace" u "github.com/jaegertracing/jaeger/internal/metricstest" + "github.com/jaegertracing/jaeger/pkg/otelsemconv" ) type testTracer struct { @@ -45,8 +45,8 @@ func withTestTracer(runTest func(tt *testTracer)) { tp := sdktrace.NewTracerProvider( sdktrace.WithSpanProcessor(observer), sdktrace.WithResource(resource.NewWithAttributes( - semconv.SchemaURL, - semconv.ServiceNameKey.String("test"), + otelsemconv.SchemaURL, + otelsemconv.ServiceNameKey.String("test"), )), ) runTest(&testTracer{ @@ -120,7 +120,7 @@ func TestTags(t *testing.T) { for i := 200; i <= 500; i += 100 { testCases = append(testCases, tagTestCase{ - attr: semconv.HTTPResponseStatusCode(i), + attr: otelsemconv.HTTPResponseStatusCode(i), metrics: []u.ExpectedMetric{ {Name: "http_requests", Value: 1, Tags: tags("status_code", fmt.Sprintf("%dxx", i/100))}, }, diff --git a/examples/hotrod/services/customer/database.go b/examples/hotrod/services/customer/database.go index 67247a11de0..41c6e9a9f48 100644 --- a/examples/hotrod/services/customer/database.go +++ b/examples/hotrod/services/customer/database.go @@ -21,7 +21,6 @@ import ( "fmt" "go.opentelemetry.io/otel/attribute" - semconv "go.opentelemetry.io/otel/semconv/v1.25.0" "go.opentelemetry.io/otel/trace" "go.uber.org/zap" @@ -29,6 +28,7 @@ import ( "github.com/jaegertracing/jaeger/examples/hotrod/pkg/log" "github.com/jaegertracing/jaeger/examples/hotrod/pkg/tracing" "github.com/jaegertracing/jaeger/examples/hotrod/services/config" + "github.com/jaegertracing/jaeger/pkg/otelsemconv" ) // database simulates Customer repository implemented on top of an SQL database @@ -77,7 +77,7 @@ func (d *database) Get(ctx context.Context, customerID int) (*Customer, error) { ctx, span := d.tracer.Start(ctx, "SQL SELECT", trace.WithSpanKind(trace.SpanKindClient)) span.SetAttributes( - semconv.PeerServiceKey.String("mysql"), + otelsemconv.PeerServiceKey.String("mysql"), attribute. Key("sql.query"). String(fmt.Sprintf("SELECT * FROM customer WHERE customer_id=%d", customerID)), diff --git a/go.mod b/go.mod index a51b073074f..7740259e468 100644 --- a/go.mod +++ b/go.mod @@ -40,6 +40,7 @@ require ( github.com/uber/jaeger-client-go v2.30.0+incompatible github.com/xdg-go/scram v1.1.2 go.opentelemetry.io/collector/component v0.104.0 + go.opentelemetry.io/collector/config/configauth v0.104.0 go.opentelemetry.io/collector/config/configgrpc v0.104.0 go.opentelemetry.io/collector/config/confighttp v0.104.0 go.opentelemetry.io/collector/config/configretry v1.11.0 @@ -69,14 +70,16 @@ require ( go.opentelemetry.io/collector/receiver/otlpreceiver v0.104.0 go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.52.0 go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.52.0 - go.opentelemetry.io/otel v1.27.0 - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.27.0 - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0 - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.27.0 - go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.27.0 - go.opentelemetry.io/otel/metric v1.27.0 - go.opentelemetry.io/otel/sdk v1.27.0 - go.opentelemetry.io/otel/trace v1.27.0 + go.opentelemetry.io/otel v1.28.0 + go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0 + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.28.0 + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0 + go.opentelemetry.io/otel/exporters/prometheus v0.50.0 + go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.28.0 + go.opentelemetry.io/otel/metric v1.28.0 + go.opentelemetry.io/otel/sdk v1.28.0 + go.opentelemetry.io/otel/sdk/metric v1.28.0 + go.opentelemetry.io/otel/trace v1.28.0 go.uber.org/automaxprocs v1.5.3 go.uber.org/goleak v1.3.0 go.uber.org/zap v1.27.0 @@ -102,7 +105,7 @@ require ( github.com/eapache/queue v1.1.0 // indirect github.com/elastic/elastic-transport-go/v8 v8.6.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect - github.com/go-logr/logr v1.4.1 // indirect + github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-ole/go-ole v1.2.6 // indirect github.com/go-viper/mapstructure/v2 v2.0.0-alpha.1 // indirect @@ -187,7 +190,6 @@ require ( github.com/yusufpapurcu/wmi v1.2.4 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/collector v0.104.0 // indirect - go.opentelemetry.io/collector/config/configauth v0.104.0 go.opentelemetry.io/collector/config/configcompression v1.11.0 // indirect go.opentelemetry.io/collector/config/confignet v0.104.0 // indirect go.opentelemetry.io/collector/config/configopaque v1.11.0 // indirect @@ -204,18 +206,16 @@ require ( go.opentelemetry.io/otel/bridge/opencensus v1.27.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.27.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.27.0 // indirect - go.opentelemetry.io/otel/exporters/prometheus v0.49.0 go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.27.0 // indirect - go.opentelemetry.io/otel/sdk/metric v1.27.0 - go.opentelemetry.io/proto/otlp v1.2.0 // indirect + go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/atomic v1.11.0 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/crypto v0.24.0 // indirect golang.org/x/exp v0.0.0-20240506185415-9bf2ced13842 // indirect golang.org/x/text v0.16.0 // indirect gonum.org/v1/gonum v0.15.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240528184218-531527333157 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/ini.v1 v1.67.0 // indirect ) diff --git a/go.sum b/go.sum index d19ce3ecf4e..ae3a62df84b 100644 --- a/go.sum +++ b/go.sum @@ -81,8 +81,8 @@ github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nos github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= -github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= +github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ= @@ -491,36 +491,36 @@ go.opentelemetry.io/contrib/propagators/b3 v1.27.0 h1:IjgxbomVrV9za6bRi8fWCNXENs go.opentelemetry.io/contrib/propagators/b3 v1.27.0/go.mod h1:Dv9obQz25lCisDvvs4dy28UPh974CxkahRDUPsY7y9E= go.opentelemetry.io/contrib/zpages v0.52.0 h1:MPgkMy0Cp3O5EdfVXP0ss3ujhEibysTM4eszx7E7d+E= go.opentelemetry.io/contrib/zpages v0.52.0/go.mod h1:fqG5AFdoYru3A3DnhibVuaaEfQV2WKxE7fYE1jgDRwk= -go.opentelemetry.io/otel v1.27.0 h1:9BZoF3yMK/O1AafMiQTVu0YDj5Ea4hPhxCs7sGva+cg= -go.opentelemetry.io/otel v1.27.0/go.mod h1:DMpAK8fzYRzs+bi3rS5REupisuqTheUlSZJ1WnZaPAQ= +go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo= +go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4= go.opentelemetry.io/otel/bridge/opencensus v1.27.0 h1:ao9aGGHd+G4YfjBpGs6vbkvt5hoC67STlJA9fCnOAcs= go.opentelemetry.io/otel/bridge/opencensus v1.27.0/go.mod h1:uRvWtAAXzyVOST0WMPX5JHGBaAvBws+2F8PcC5gMnTk= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.27.0 h1:bFgvUr3/O4PHj3VQcFEuYKvRZJX1SJDQ+11JXuSB3/w= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.27.0/go.mod h1:xJntEd2KL6Qdg5lwp97HMLQDVeAhrYxmzFseAMDPQ8I= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.27.0 h1:CIHWikMsN3wO+wq1Tp5VGdVRTcON+DmOJSfDjXypKOc= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.27.0/go.mod h1:TNupZ6cxqyFEpLXAZW7On+mLFL0/g0TE3unIYL91xWc= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.27.0 h1:R9DE4kQ4k+YtfLI2ULwX82VtNQ2J8yZmA7ZIF/D+7Mc= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.27.0/go.mod h1:OQFyQVrDlbe+R7xrEyDr/2Wr67Ol0hRUgsfA+V5A95s= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0 h1:qFffATk0X+HD+f1Z8lswGiOQYKHRlzfmdJm0wEaVrFA= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0/go.mod h1:MOiCmryaYtc+V0Ei+Tx9o5S1ZjA7kzLucuVuyzBZloQ= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.27.0 h1:QY7/0NeRPKlzusf40ZE4t1VlMKbqSNT7cJRYzWuja0s= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.27.0/go.mod h1:HVkSiDhTM9BoUJU8qE6j2eSWLLXvi1USXjyd2BXT8PY= -go.opentelemetry.io/otel/exporters/prometheus v0.49.0 h1:Er5I1g/YhfYv9Affk9nJLfH/+qCCVVg1f2R9AbJfqDQ= -go.opentelemetry.io/otel/exporters/prometheus v0.49.0/go.mod h1:KfQ1wpjf3zsHjzP149P4LyAwWRupc6c7t1ZJ9eXpKQM= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0 h1:3Q/xZUyC1BBkualc9ROb4G8qkH90LXEIICcs5zv1OYY= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0/go.mod h1:s75jGIWA9OfCMzF0xr+ZgfrB5FEbbV7UuYo32ahUiFI= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.28.0 h1:R3X6ZXmNPRR8ul6i3WgFURCHzaXjHdm0karRG/+dj3s= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.28.0/go.mod h1:QWFXnDavXWwMx2EEcZsf3yxgEKAqsxQ+Syjp+seyInw= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0 h1:j9+03ymgYhPKmeXGk5Zu+cIZOlVzd9Zv7QIiyItjFBU= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.28.0/go.mod h1:Y5+XiUG4Emn1hTfciPzGPJaSI+RpDts6BnCIir0SLqk= +go.opentelemetry.io/otel/exporters/prometheus v0.50.0 h1:2Ewsda6hejmbhGFyUvWZjUThC98Cf8Zy6g0zkIimOng= +go.opentelemetry.io/otel/exporters/prometheus v0.50.0/go.mod h1:pMm5PkUo5YwbLiuEf7t2xg4wbP0/eSJrMxIMxKosynY= go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.27.0 h1:/jlt1Y8gXWiHG9FBx6cJaIC5hYx5Fe64nC8w5Cylt/0= go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.27.0/go.mod h1:bmToOGOBZ4hA9ghphIc1PAf66VA8KOtsuy3+ScStG20= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.27.0 h1:/0YaXu3755A/cFbtXp+21lkXgI0QE5avTWA2HjU9/WE= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.27.0/go.mod h1:m7SFxp0/7IxmJPLIY3JhOcU9CoFzDaCPL6xxQIxhA+o= -go.opentelemetry.io/otel/metric v1.27.0 h1:hvj3vdEKyeCi4YaYfNjv2NUje8FqKqUY8IlF0FxV/ik= -go.opentelemetry.io/otel/metric v1.27.0/go.mod h1:mVFgmRlhljgBiuk/MP/oKylr4hs85GZAylncepAX/ak= -go.opentelemetry.io/otel/sdk v1.27.0 h1:mlk+/Y1gLPLn84U4tI8d3GNJmGT/eXe3ZuOXN9kTWmI= -go.opentelemetry.io/otel/sdk v1.27.0/go.mod h1:Ha9vbLwJE6W86YstIywK2xFfPjbWlCuwPtMkKdz/Y4A= -go.opentelemetry.io/otel/sdk/metric v1.27.0 h1:5uGNOlpXi+Hbo/DRoI31BSb1v+OGcpv2NemcCrOL8gI= -go.opentelemetry.io/otel/sdk/metric v1.27.0/go.mod h1:we7jJVrYN2kh3mVBlswtPU22K0SA+769l93J6bsyvqw= -go.opentelemetry.io/otel/trace v1.27.0 h1:IqYb813p7cmbHk0a5y6pD5JPakbVfftRXABGt5/Rscw= -go.opentelemetry.io/otel/trace v1.27.0/go.mod h1:6RiD1hkAprV4/q+yd2ln1HG9GoPx39SuvvstaLBl+l4= -go.opentelemetry.io/proto/otlp v1.2.0 h1:pVeZGk7nXDC9O2hncA6nHldxEjm6LByfA2aN8IOkz94= -go.opentelemetry.io/proto/otlp v1.2.0/go.mod h1:gGpR8txAl5M03pDhMC79G6SdqNV26naRm/KDsgaHD8A= +go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.28.0 h1:EVSnY9JbEEW92bEkIYOVMw4q1WJxIAGoFTrtYOzWuRQ= +go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.28.0/go.mod h1:Ea1N1QQryNXpCD0I1fdLibBAIpQuBkznMmkdKrapk1Y= +go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q= +go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s= +go.opentelemetry.io/otel/sdk v1.28.0 h1:b9d7hIry8yZsgtbmM0DKyPWMMUMlK9NEKuIG4aBqWyE= +go.opentelemetry.io/otel/sdk v1.28.0/go.mod h1:oYj7ClPUA7Iw3m+r7GeEjz0qckQRJK2B8zjcZEfu7Pg= +go.opentelemetry.io/otel/sdk/metric v1.28.0 h1:OkuaKgKrgAbYrrY0t92c+cC+2F6hsFNnCQArXCKlg08= +go.opentelemetry.io/otel/sdk/metric v1.28.0/go.mod h1:cWPjykihLAPvXKi4iZc1dpER3Jdq2Z0YLse3moQUCpg= +go.opentelemetry.io/otel/trace v1.28.0 h1:GhQ9cUuQGmNDd5BTCP2dAvv75RdMxEfTmYejp+lkx9g= +go.opentelemetry.io/otel/trace v1.28.0/go.mod h1:jPyXzNPg6da9+38HEwElrQiHlVMTnVfM3/yv2OlIHaI= +go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= +go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= go.uber.org/atomic v1.11.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= go.uber.org/automaxprocs v1.5.3 h1:kWazyxZUrS3Gs4qUpbwo5kEIMGe/DAvi5Z4tl2NW4j8= @@ -657,10 +657,10 @@ google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7 google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= -google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157 h1:7whR9kGa5LUwFtpLm2ArCEejtnxlGeLbAyjFY8sGNFw= -google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157/go.mod h1:99sLkeliLXfdj2J75X3Ho+rrVCaJze0uwN7zDDkjPVU= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240528184218-531527333157 h1:Zy9XzmMEflZ/MAaA7vNcoebnRAld7FsPW1EeBB7V0m8= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240528184218-531527333157/go.mod h1:EfXuqaE1J41VCDicxHzUDm+8rk+7ZdXzHV0IhO/I6s0= +google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094 h1:0+ozOGcrp+Y8Aq8TLNN2Aliibms5LEzsq99ZZmAGYm0= +google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094/go.mod h1:fJ/e3If/Q67Mj99hin0hMhiNyCRmt6BQ2aWIJshUSJw= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 h1:BwIjyKYGsK9dMCBOorzRri8MQwmi7mT9rGHsCEinZkA= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= diff --git a/model/adjuster/otel_tag.go b/model/adjuster/otel_tag.go index 6e32a12ce81..18b5714bdd9 100644 --- a/model/adjuster/otel_tag.go +++ b/model/adjuster/otel_tag.go @@ -15,14 +15,16 @@ package adjuster import ( - semconv "go.opentelemetry.io/otel/semconv/v1.25.0" - "github.com/jaegertracing/jaeger/model" + "github.com/jaegertracing/jaeger/pkg/otelsemconv" ) var otelLibraryKeys = map[string]struct{}{ - string(semconv.OTelLibraryNameKey): {}, - string(semconv.OTelLibraryVersionKey): {}, + string(otelsemconv.TelemetrySDKLanguageKey): {}, + string(otelsemconv.TelemetrySDKNameKey): {}, + string(otelsemconv.TelemetrySDKVersionKey): {}, + string(otelsemconv.TelemetryDistroNameKey): {}, + string(otelsemconv.TelemetryDistroVersionKey): {}, } func OTelTagAdjuster() Adjuster { diff --git a/model/adjuster/otel_tag_test.go b/model/adjuster/otel_tag_test.go index 95bd37333ca..02e50104640 100644 --- a/model/adjuster/otel_tag_test.go +++ b/model/adjuster/otel_tag_test.go @@ -19,9 +19,9 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - semconv "go.opentelemetry.io/otel/semconv/v1.25.0" "github.com/jaegertracing/jaeger/model" + "github.com/jaegertracing/jaeger/pkg/otelsemconv" ) func TestOTelTagAdjuster(t *testing.T) { @@ -35,8 +35,12 @@ func TestOTelTagAdjuster(t *testing.T) { span: &model.Span{ Tags: model.KeyValues{ model.String("random_key", "random_value"), - model.String(string(semconv.OTelLibraryNameKey), "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp"), - model.String(string(semconv.OTelLibraryVersionKey), "0.45.0"), + model.String(string(otelsemconv.TelemetrySDKLanguageKey), "Go"), + model.String(string(otelsemconv.TelemetrySDKNameKey), "opentelemetry"), + model.String(string(otelsemconv.TelemetrySDKVersionKey), "1.27.0"), + // distro attrs intentionally after SDK attrs to test sorting + model.String(string(otelsemconv.TelemetryDistroNameKey), "opentelemetry"), + model.String(string(otelsemconv.TelemetryDistroVersionKey), "blah"), model.String("another_key", "another_value"), }, Process: &model.Process{ @@ -50,8 +54,11 @@ func TestOTelTagAdjuster(t *testing.T) { }, Process: &model.Process{ Tags: model.KeyValues{ - model.String(string(semconv.OTelLibraryNameKey), "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp"), - model.String(string(semconv.OTelLibraryVersionKey), "0.45.0"), + model.String(string(otelsemconv.TelemetryDistroNameKey), "opentelemetry"), + model.String(string(otelsemconv.TelemetryDistroVersionKey), "blah"), + model.String(string(otelsemconv.TelemetrySDKLanguageKey), "Go"), + model.String(string(otelsemconv.TelemetrySDKNameKey), "opentelemetry"), + model.String(string(otelsemconv.TelemetrySDKVersionKey), "1.27.0"), }, }, }, diff --git a/pkg/jtracer/jtracer.go b/pkg/jtracer/jtracer.go index f8329ba0e29..21e637d042d 100644 --- a/pkg/jtracer/jtracer.go +++ b/pkg/jtracer/jtracer.go @@ -24,9 +24,10 @@ import ( "go.opentelemetry.io/otel/propagation" "go.opentelemetry.io/otel/sdk/resource" sdktrace "go.opentelemetry.io/otel/sdk/trace" - semconv "go.opentelemetry.io/otel/semconv/v1.25.0" "go.opentelemetry.io/otel/trace" nooptrace "go.opentelemetry.io/otel/trace/noop" + + "github.com/jaegertracing/jaeger/pkg/otelsemconv" ) type JTracer struct { @@ -110,8 +111,8 @@ func initHelper( func otelResource(ctx context.Context, svc string) (*resource.Resource, error) { return resource.New( ctx, - resource.WithSchemaURL(semconv.SchemaURL), - resource.WithAttributes(semconv.ServiceNameKey.String(svc)), + resource.WithSchemaURL(otelsemconv.SchemaURL), + resource.WithAttributes(otelsemconv.ServiceNameKey.String(svc)), resource.WithTelemetrySDK(), resource.WithHost(), resource.WithOSType(), diff --git a/pkg/otelsemconv/empty_test.go b/pkg/otelsemconv/empty_test.go new file mode 100644 index 00000000000..c172ec0a46d --- /dev/null +++ b/pkg/otelsemconv/empty_test.go @@ -0,0 +1,14 @@ +// Copyright (c) 2024 The Jaeger Authors. +// SPDX-License-Identifier: Apache-2.0 + +package otelsemconv + +import ( + "testing" + + "github.com/jaegertracing/jaeger/pkg/testutils" +) + +func TestMain(m *testing.M) { + testutils.VerifyGoLeaks(m) +} diff --git a/pkg/otelsemconv/semconv.go b/pkg/otelsemconv/semconv.go new file mode 100644 index 00000000000..9acb3b88e2c --- /dev/null +++ b/pkg/otelsemconv/semconv.go @@ -0,0 +1,29 @@ +// Copyright (c) 2024 The Jaeger Authors. +// SPDX-License-Identifier: Apache-2.0 + +package otelsemconv + +import ( + semconv "go.opentelemetry.io/otel/semconv/v1.26.0" +) + +// We do not use a lot of semconv constants, and its annoying to keep +// the semver of the imports the same. This package serves as a +// one stop shop replacement / alias. +const ( + SchemaURL = semconv.SchemaURL + + TelemetrySDKLanguageKey = semconv.TelemetrySDKLanguageKey + TelemetrySDKNameKey = semconv.TelemetrySDKNameKey + TelemetrySDKVersionKey = semconv.TelemetrySDKVersionKey + TelemetryDistroNameKey = semconv.TelemetryDistroNameKey + TelemetryDistroVersionKey = semconv.TelemetryDistroVersionKey + + ServiceNameKey = semconv.ServiceNameKey + DBQueryTextKey = semconv.DBQueryTextKey + DBSystemKey = semconv.DBSystemKey + PeerServiceKey = semconv.PeerServiceKey + HTTPResponseStatusCodeKey = semconv.HTTPResponseStatusCodeKey +) + +var HTTPResponseStatusCode = semconv.HTTPResponseStatusCode diff --git a/plugin/metrics/prometheus/metricsstore/reader.go b/plugin/metrics/prometheus/metricsstore/reader.go index e65c97edbdc..c91b68fec57 100644 --- a/plugin/metrics/prometheus/metricsstore/reader.go +++ b/plugin/metrics/prometheus/metricsstore/reader.go @@ -30,11 +30,11 @@ import ( promapi "github.com/prometheus/client_golang/api/prometheus/v1" "go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/codes" - semconv "go.opentelemetry.io/otel/semconv/v1.25.0" "go.opentelemetry.io/otel/trace" "go.uber.org/zap" "github.com/jaegertracing/jaeger/pkg/bearertoken" + "github.com/jaegertracing/jaeger/pkg/otelsemconv" "github.com/jaegertracing/jaeger/pkg/prometheus/config" "github.com/jaegertracing/jaeger/plugin/metrics/prometheus/metricsstore/dbmodel" "github.com/jaegertracing/jaeger/proto-gen/api_v2/metrics" @@ -314,8 +314,8 @@ func promqlDurationString(d *time.Duration) string { func startSpanForQuery(ctx context.Context, metricName, query string, tp trace.Tracer) (context.Context, trace.Span) { ctx, span := tp.Start(ctx, metricName) span.SetAttributes( - attribute.Key(semconv.DBStatementKey).String(query), - attribute.Key(semconv.DBSystemKey).String("prometheus"), + attribute.Key(otelsemconv.DBQueryTextKey).String(query), + attribute.Key(otelsemconv.DBSystemKey).String("prometheus"), attribute.Key("component").String("promql"), ) return ctx, span diff --git a/plugin/storage/cassandra/spanstore/reader.go b/plugin/storage/cassandra/spanstore/reader.go index 7ef2f23250f..66e279dff2a 100644 --- a/plugin/storage/cassandra/spanstore/reader.go +++ b/plugin/storage/cassandra/spanstore/reader.go @@ -23,7 +23,6 @@ import ( "go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/codes" - semconv "go.opentelemetry.io/otel/semconv/v1.25.0" "go.opentelemetry.io/otel/trace" "go.uber.org/zap" @@ -31,6 +30,7 @@ import ( "github.com/jaegertracing/jaeger/pkg/cassandra" casMetrics "github.com/jaegertracing/jaeger/pkg/cassandra/metrics" "github.com/jaegertracing/jaeger/pkg/metrics" + "github.com/jaegertracing/jaeger/pkg/otelsemconv" "github.com/jaegertracing/jaeger/plugin/storage/cassandra/spanstore/dbmodel" "github.com/jaegertracing/jaeger/storage/spanstore" ) @@ -430,8 +430,8 @@ func (s *SpanReader) executeQuery(span trace.Span, query cassandra.Query, tableM func (s *SpanReader) startSpanForQuery(ctx context.Context, name, query string) (context.Context, trace.Span) { ctx, span := s.tracer.Start(ctx, name) span.SetAttributes( - attribute.Key(semconv.DBStatementKey).String(query), - attribute.Key(semconv.DBSystemKey).String("cassandra"), + attribute.Key(otelsemconv.DBQueryTextKey).String(query), + attribute.Key(otelsemconv.DBSystemKey).String("cassandra"), attribute.Key("component").String("gocql"), ) return ctx, span