opentelemetry-go
opentelemetry-go copied to clipboard
go get all: module go.opentelemetry.io/otel/metric@upgrade found (v0.30.0), but does not contain package
go get -u all go get all: module go.opentelemetry.io/otel/metric@upgrade found (v0.30.0), but does not contain package go.opentelemetry.io/otel/metric/number go get all: module go.opentelemetry.io/otel/metric@upgrade found (v0.30.0), but does not contain package go.opentelemetry.io/otel/metric/sdkapi
It seems go.opentelemetry.io/otel/metric is resolved as v0.30.0, which is quite old (the latest release is v1.7.0).
Could you share the content of your go.mod to help you figure out which dependency needs to be bumped to v1?
This will happen if you are upgrading past metric v0.27.0. Those packages were removed with the new API. Please understand that the metrics API and SDK are in flux and are not considered stable, so there can be breaking changes in the future.
@dmathieu https://github.com/open-telemetry/opentelemetry-go/blob/main/bridge/opencensus/go.mod#L10
The releases also seem to indicate that v0.30.0 was just released alongside v1.7.0. Maybe metrics go modules are being released at different versions?
EDIT -- sorry, I apparently had a frozen version of the bridge. Things are working for me.
Left for reference -- got around the issue by explicitly upgrading the bridge package For what its worth I am having issues as well. See
❯ go mod tidy
go: downloading go.opentelemetry.io/contrib/zpages v0.32.0
go: downloading github.com/cenkalti/backoff/v4 v4.1.3
go: finding module for package go.opentelemetry.io/otel/metric/number
go: finding module for package go.opentelemetry.io/otel/metric/sdkapi
go: finding module for package go.opentelemetry.io/otel/metric/metrictest
github.com/braincorp/titanium/cmd/bdps imports
go.opentelemetry.io/otel/bridge/opencensus imports
go.opentelemetry.io/otel/metric/number: module go.opentelemetry.io/otel/metric@latest found (v0.30.0), but does not contain package go.opentelemetry.io/otel/metric/number
github.com/braincorp/titanium/cmd/bdps imports
go.opentelemetry.io/otel/bridge/opencensus imports
go.opentelemetry.io/otel/metric/sdkapi: module go.opentelemetry.io/otel/metric@latest found (v0.30.0), but does not contain package go.opentelemetry.io/otel/metric/sdkapi
github.com/braincorp/titanium/cmd/bdps imports
go.opentelemetry.io/otel/bridge/opencensus tested by
go.opentelemetry.io/otel/bridge/opencensus.test imports
go.opentelemetry.io/otel/metric/metrictest: module go.opentelemetry.io/otel/metric@latest found (v0.30.0), but does not contain package go.opentelemetry.io/otel/metric/metrictest
I understand that the metrics apis are not considered stable but this issue seems to be internal to the OTEL go libraries.
I get something similar
❯ go mod tidy
go: finding module for package go.opentelemetry.io/otel/unit
go: finding module for package go.opentelemetry.io/otel/semconv
go: finding module for package go.opentelemetry.io/otel/internal/metric
go: found go.opentelemetry.io/otel/internal/metric in go.opentelemetry.io/otel/internal/metric v0.27.0
go: finding module for package go.opentelemetry.io/otel/semconv
go: finding module for package go.opentelemetry.io/otel/metric/registry
github.com/cert-manager/cert-manager/pkg/acme/webhook/cmd/server imports
k8s.io/apiserver/pkg/server/options imports
go.opentelemetry.io/otel/semconv: module go.opentelemetry.io/otel@latest found (v1.7.0), but does not contain package go.opentelemetry.io/otel/semconv
github.com/cert-manager/cert-manager/pkg/acme/webhook/cmd/server imports
k8s.io/apiserver/pkg/server/options imports
go.opentelemetry.io/otel/exporters/otlp/otlpgrpc imports
go.opentelemetry.io/otel/exporters/otlp imports
go.opentelemetry.io/otel/sdk/metric/controller/basic imports
go.opentelemetry.io/otel/metric/registry: module go.opentelemetry.io/otel/metric@latest found (v0.30.0), but does not contain package go.opentelemetry.io/otel/metric/registry
UPDATE: Now I have only on issue after using the latest versions:
require (
...
go.opentelemetry.io/contrib/instrumentation/runtime v0.32.0
go.opentelemetry.io/otel/exporters/metric/prometheus v0.21.0
go.opentelemetry.io/otel v1.7.0
go.opentelemetry.io/otel/metric v0.30.0
go.opentelemetry.io/otel/sdk v1.7.0
go.opentelemetry.io/otel/sdk/metric v0.30.0
...
)
$ go get -u
$ go mod tidy
go: finding module for package go.opentelemetry.io/otel/metric/number
...cmd/devices imports
go.opentelemetry.io/otel/exporters/metric/prometheus imports
go.opentelemetry.io/otel/metric/number: module go.opentelemetry.io/otel/metric@latest found (v0.30.0), but does not contain package go.opentelemetry.io/otel/metric/number
I am also facing this problem. I have tried to force the latest package versions in different combinations, but without success.
$ go mod tidy
go: finding module for package go.opentelemetry.io/otel/semconv
go: finding module for package go.opentelemetry.io/otel/unit
go: finding module for package go.opentelemetry.io/otel/internal/metric
go: found go.opentelemetry.io/otel/internal/metric in go.opentelemetry.io/otel/internal/metric v0.27.0
go: finding module for package go.opentelemetry.io/otel/semconv
go: finding module for package go.opentelemetry.io/otel/unit
go: finding module for package go.opentelemetry.io/otel/metric/registry
.../cmd/devices imports
go.opentelemetry.io/contrib/instrumentation/runtime imports
go.opentelemetry.io/otel/unit: module go.opentelemetry.io/otel@latest found (v1.7.0), but does not contain package go.opentelemetry.io/otel/unit
.../cmd/devices imports
go.opentelemetry.io/otel/sdk/metric/controller/basic imports
go.opentelemetry.io/otel/metric/registry: module go.opentelemetry.io/otel/metric@latest found (v0.30.0), but does not contain package go.opentelemetry.io/otel/metric/registry
.../cmd/devices imports
go.opentelemetry.io/contrib/instrumentation/runtime tested by
go.opentelemetry.io/contrib/instrumentation/runtime.test imports
go.opentelemetry.io/otel/oteltest imports
go.opentelemetry.io/otel/semconv: module go.opentelemetry.io/otel@latest found (v1.7.0), but does not contain package go.opentelemetry.io/otel/semconv
require (
...
go.opentelemetry.io/contrib/instrumentation/runtime v0.18.0
go.opentelemetry.io/otel v1.3.0
go.opentelemetry.io/otel/exporters/metric/prometheus v0.18.0
go.opentelemetry.io/otel/metric v0.20.0
go.opentelemetry.io/otel/sdk v1.3.0
go.opentelemetry.io/otel/sdk/metric v0.20.0
...
)
THe issue on my side is related to this deprecation: https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md#deprecated-6
replace
go.opentelemetry.io/otel/exporters/metric/prometheus
By
"go.opentelemetry.io/otel/exporters/prometheus"
FIxed for me
I'm facing a similar issue. Is there an update?
Similar issue here as well. Trying to use otlphttp.
go get go.opentelemetry.io/otel/exporters/otlp/otlphttp
go: downloading go.opentelemetry.io/otel/exporters/otlp v0.20.0
go: downloading go.opentelemetry.io/proto/otlp v0.11.0
go: downloading go.opentelemetry.io/otel/sdk/export/metric v0.20.0
go: downloading go.opentelemetry.io/otel/metric v0.20.0
go: downloading go.opentelemetry.io/otel/sdk/metric v0.20.0
go: downloading github.com/grpc-ecosystem/grpc-gateway v1.16.0
go: downloading go.opentelemetry.io/otel/internal/metric v0.27.0
go: downloading go.opentelemetry.io/otel/metric v0.27.0
go: downloading go.opentelemetry.io/otel/metric v0.31.0
go.opentelemetry.io/otel/exporters/otlp/otlphttp imports
go.opentelemetry.io/otel/exporters/otlp imports
go.opentelemetry.io/otel/sdk/metric/controller/basic imports
go.opentelemetry.io/otel/metric/registry: cannot find module providing package go.opentelemetry.io/otel/metric/registry
Current contents in go.mod:
go.opentelemetry.io/otel v1.8.0 // indirect
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.8.0 // indirect
go.opentelemetry.io/otel/sdk v1.8.0 // indirect
go.opentelemetry.io/otel/trace v1.8.0 // indirect
Sorry, my case was due to me importing it wrong. I should have been using go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp
I'm facing a similar issue. Is there an update?
This issue will happen if one of your otel packages is still using v0.x, and not 1.x. The fix is to upgrade every OpenTelemetry pakage to 1.x.
This issue will happen if one of your otel packages is still using v0.x, and not 1.x. The fix is to upgrade every OpenTelemetry package to 1.x.
This is in general good, but not entirely complete advice as some otel packages like go.opentelemetry.io/otel/metric are still unstable and do not yet have a v1 release. Similar care must also be taken with related libraries outside of go.opentelemetry.io/otel.
In my case, when I updated to the latest releases, then go mod tidy still gave me:
github.com/Khan/webapp/services/progress-reports/sqldb imports
github.com/XSAM/otelsql tested by
github.com/XSAM/otelsql.test imports
go.opentelemetry.io/otel/metric/nonrecording: module go.opentelemetry.io/otel/metric@latest found (v0.31.0), but does not contain package go.opentelemetry.io/otel/metric/nonrecording
If you go to https://pkg.go.dev/go.opentelemetry.io/otel/metric/nonrecording you can see in the latest release that the nonrecording package is found in is v0.30.0 (but it was removed in v0.31.0).
Upgrading otelsql to v0.15.0 would have resolved the problem, but requires Go 1.17 (and we are stuck on Go 1.16).
otelsql v0.14.1 has direct dependencies which are all over v1: https://github.com/XSAM/otelsql/blob/v0.14.1/go.mod except for go.opentelemetry.io/otel/metric v0.28.0 which is currently unstable and has no v1 yet.
Running go mod edit -replace go.opentelemetry.io/otel/metric=go.opentelemetry.io/otel/[email protected] allowed go mod tidy to successfully run without error.
After we are able to upgrade to Go 1.17 and then update otelsql, we can remove the replace directive and allow go.opentelemetry.io/otel/metric to advance to v0.31.0. I hope this is helpful to others who have similar problems.
If you upgrade otelsql to 0.16.0, this metric issue should be fixed.
Closing as the original author has resolved their issue.
Still have this error with go.opentelemetry.io/otel/metric v1.16.0: https://github.com/uptrace/opentelemetry-go-extra/issues/106 - any ideas?
Still have this error with
go.opentelemetry.io/otel/metricv1.16.0: uptrace/opentelemetry-go-extra#106 - any ideas?
Please open a new issue to address your situation.