Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update opentelemetry dependencies to the latest release (Take 2) #125922

Merged
merged 2 commits into from
Jul 7, 2024

Conversation

dims
Copy link
Member

@dims dims commented Jul 5, 2024

We first tried this in #125575 and had to revert it in #125731 because of #125575 (comment)

We tracked it down to a problem in go-grpc #125688 (comment) and filed grpc/grpc-go#7355 finally it looks like the go-grpc folks just removed the Stringer implementation entirely in grpc/grpc-go#7374 and cut a release for us to use https://github.com/grpc/grpc-go/tree/v1.65.0

So we end up with the following updates here:

hack/pin-dependency.sh go.opentelemetry.io/otel v1.28.0
hack/pin-dependency.sh go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0
hack/pin-dependency.sh go.opentelemetry.io/otel/sdk v1.28.0
hack/pin-dependency.sh go.opentelemetry.io/otel/trace v1.28.0
hack/pin-dependency.sh go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0
hack/pin-dependency.sh go.opentelemetry.io/otel/metric v1.28.0
hack/pin-dependency.sh go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.53.0
hack/pin-dependency.sh go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0
hack/pin-dependency.sh google.golang.org/grpc v1.65.0
hack/update-vendor.sh

What type of PR is this?

/kind cleanup

What this PR does / why we need it:

Update the OpenTelemetry dependencies to the latest release. There have been a variety of bug-fixes and performance improvements since v1.20.0.

The only change to telemetry is that the http.user_agent attribute was changed to user_agent.original. This is expected, and complies with our current stability guarantees: https://kubernetes.io/docs/concepts/cluster-administration/system-traces/#stability.

Which issue(s) this PR fixes:

Fixes #

Special notes for your reviewer:

Does this PR introduce a user-facing change?

NONE

Additional documentation e.g., KEPs (Kubernetes Enhancement Proposals), usage docs, etc.:


@k8s-ci-robot k8s-ci-robot added release-note-none Denotes a PR that doesn't merit a release note. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge/needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. needs-priority Indicates a PR lacks a `priority/foo` label and requires one. labels Jul 5, 2024
@k8s-ci-robot k8s-ci-robot requested review from alexzielenski, andyzhangx and a team July 5, 2024 16:28
@dims dims changed the title Update otel 27 Update opentelemetry dependencies to the latest release (Take 2) Jul 5, 2024
@k8s-ci-robot k8s-ci-robot added area/apiserver area/cloudprovider area/code-generation area/dependency Issues or PRs related to dependency changes area/kube-proxy area/kubectl area/kubelet area/test sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. sig/architecture Categorizes an issue or PR as relevant to SIG Architecture. sig/auth Categorizes an issue or PR as relevant to SIG Auth. sig/cli Categorizes an issue or PR as relevant to SIG CLI. sig/cloud-provider Categorizes an issue or PR as relevant to SIG Cloud Provider. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. sig/instrumentation Categorizes an issue or PR as relevant to SIG Instrumentation. sig/network Categorizes an issue or PR as relevant to SIG Network. sig/node Categorizes an issue or PR as relevant to SIG Node. sig/storage Categorizes an issue or PR as relevant to SIG Storage. and removed do-not-merge/needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. labels Jul 5, 2024
@dims
Copy link
Member Author

dims commented Jul 5, 2024

/skip

@dims
Copy link
Member Author

dims commented Jul 5, 2024

/hold

@dashpole TestAPIServerTracing/create_node is failing, can you PTAL?

https://prow.k8s.io/view/gs/kubernetes-jenkins/pr-logs/pull/125922/pull-kubernetes-integration/1809314932085231616

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jul 5, 2024
@dims
Copy link
Member Author

dims commented Jul 5, 2024

@dashpole some additional information, we saw this before in a previous attempt at upgrading some deps too: #123056 (comment)

@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 5, 2024
@dims
Copy link
Member Author

dims commented Jul 5, 2024

trying even newer deps! 🤞🏾

hack/pin-dependency.sh go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.53.0
hack/pin-dependency.sh go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0
hack/pin-dependency.sh go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0
hack/pin-dependency.sh go.opentelemetry.io/otel/metric v1.28.0

as it worked locally

make test-integration WHAT=./test/integration/apiserver/tracing GOFLAGS='-v'

@dims
Copy link
Member Author

dims commented Jul 6, 2024

/retest

dims and others added 2 commits July 5, 2024 21:21
This update dropped the otelgrpc → cloud.google.com/go/compute dependency,
among others. This dropped out because genproto cleaned up it's dependencies
on google cloud libraries, and otel updated - details in kubernetes#113366.

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
Co-Authored-By: David Ashpole <dashpole@google.com>
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
@dims
Copy link
Member Author

dims commented Jul 6, 2024

/skip

@dims
Copy link
Member Author

dims commented Jul 6, 2024

still good locally

--- PASS: TestAPIServerTracing (32.19s)
    --- PASS: TestAPIServerTracing/create_node (3.94s)
    --- PASS: TestAPIServerTracing/get_node (4.99s)
    --- PASS: TestAPIServerTracing/list_nodes (5.00s)
    --- PASS: TestAPIServerTracing/update_node (5.00s)
    --- PASS: TestAPIServerTracing/patch_node (5.00s)
    --- PASS: TestAPIServerTracing/delete_node (5.00s)
PASS
ok  	k8s.io/kubernetes/test/integration/apiserver/tracing	47.318s
+++ [0705 21:41:08] Cleaning up etcd
+++ [0705 21:41:08] Integration test cleanup complete

TestWatchStreamSeparation output

5m45s: 461 runs so far, 5 failures (1.08%)
5m50s: 469 runs so far, 5 failures (1.07%)
5m55s: 476 runs so far, 5 failures (1.05%)
6m0s: 481 runs so far, 5 failures (1.04%)
6m5s: 489 runs so far, 5 failures (1.02%)
6m10s: 496 runs so far, 5 failures (1.01%)
6m15s: 502 runs so far, 5 failures (1.00%)
6m20s: 509 runs so far, 5 failures (0.98%)
6m25s: 516 runs so far, 5 failures (0.97%)

@k8s-ci-robot
Copy link
Contributor

@dims: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
pull-kubernetes-e2e-capz-windows-master 2180ec8 link false /test pull-kubernetes-e2e-capz-windows-master

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@dims
Copy link
Member Author

dims commented Jul 6, 2024

/skip

@ameukam
Copy link
Member

ameukam commented Jul 6, 2024

/lgtm
🤞🏾

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 6, 2024
@k8s-ci-robot
Copy link
Contributor

LGTM label has been added.

Git tree hash: 61251f62791ffa435e806ca70b28a17635b11fcd

@dims
Copy link
Member Author

dims commented Jul 6, 2024

/hold cancel

thanks @ameukam

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jul 6, 2024
@k8s-ci-robot k8s-ci-robot merged commit 07cc20a into kubernetes:master Jul 7, 2024
22 checks passed
@k8s-ci-robot k8s-ci-robot added this to the v1.31 milestone Jul 7, 2024
@cici37
Copy link
Contributor

cici37 commented Jul 9, 2024

/triage accepted

@k8s-ci-robot k8s-ci-robot added triage/accepted Indicates an issue or PR is ready to be actively worked on. and removed needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels Jul 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. area/apiserver area/cloudprovider area/code-generation area/dependency Issues or PRs related to dependency changes area/kube-proxy area/kubectl area/kubelet area/test cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. lgtm "Looks good to me", indicates that a PR is ready to be merged. needs-priority Indicates a PR lacks a `priority/foo` label and requires one. release-note-none Denotes a PR that doesn't merit a release note. sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. sig/architecture Categorizes an issue or PR as relevant to SIG Architecture. sig/auth Categorizes an issue or PR as relevant to SIG Auth. sig/cli Categorizes an issue or PR as relevant to SIG CLI. sig/cloud-provider Categorizes an issue or PR as relevant to SIG Cloud Provider. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. sig/instrumentation Categorizes an issue or PR as relevant to SIG Instrumentation. sig/network Categorizes an issue or PR as relevant to SIG Network. sig/node Categorizes an issue or PR as relevant to SIG Node. sig/storage Categorizes an issue or PR as relevant to SIG Storage. sig/testing Categorizes an issue or PR as relevant to SIG Testing. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. triage/accepted Indicates an issue or PR is ready to be actively worked on.
Projects
Archived in project
Archived in project
Development

Successfully merging this pull request may close these issues.

8 participants