diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/filters/traces.go b/staging/src/k8s.io/apiserver/pkg/endpoints/filters/traces.go index b6eafb1fab7..b56dda2f87b 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/filters/traces.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/filters/traces.go @@ -56,6 +56,10 @@ func WithTracing(handler http.Handler, tp trace.TracerProvider) http.Handler { } func getSpanNameFromRequestInfo(info *request.RequestInfo) string { + if !info.IsResourceRequest { + return info.Path + } + spanName := "/" + info.APIPrefix if info.APIGroup != "" { spanName += "/" + info.APIGroup @@ -66,7 +70,7 @@ func getSpanNameFromRequestInfo(info *request.RequestInfo) string { } spanName += "/" + info.Resource if info.Name != "" { - spanName += "/" + "{:id}" + spanName += "/" + "{:name}" } if info.Subresource != "" { spanName += "/" + info.Subresource diff --git a/test/integration/apiserver/tracing/tracing_test.go b/test/integration/apiserver/tracing/tracing_test.go index c3cdc15bb5e..f7bca4798a8 100644 --- a/test/integration/apiserver/tracing/tracing_test.go +++ b/test/integration/apiserver/tracing/tracing_test.go @@ -309,7 +309,7 @@ endpoint: %s`, listener.Addr().String())), os.FileMode(0755)); err != nil { }, expectedTrace: []*spanExpectation{ { - name: "KubernetesAPI", + name: "/api/v1/nodes", attributes: map[string]func(*commonv1.AnyValue) bool{ "http.user_agent": func(v *commonv1.AnyValue) bool { return strings.HasPrefix(v.GetStringValue(), "tracing.test") @@ -428,7 +428,7 @@ endpoint: %s`, listener.Addr().String())), os.FileMode(0755)); err != nil { }, expectedTrace: []*spanExpectation{ { - name: "KubernetesAPI", + name: "/api/v1/nodes/{:name}", attributes: map[string]func(*commonv1.AnyValue) bool{ "http.user_agent": func(v *commonv1.AnyValue) bool { return strings.HasPrefix(v.GetStringValue(), "tracing.test") @@ -518,7 +518,7 @@ endpoint: %s`, listener.Addr().String())), os.FileMode(0755)); err != nil { }, expectedTrace: []*spanExpectation{ { - name: "KubernetesAPI", + name: "/api/v1/nodes", attributes: map[string]func(*commonv1.AnyValue) bool{ "http.user_agent": func(v *commonv1.AnyValue) bool { return strings.HasPrefix(v.GetStringValue(), "tracing.test") @@ -636,7 +636,7 @@ endpoint: %s`, listener.Addr().String())), os.FileMode(0755)); err != nil { }, expectedTrace: []*spanExpectation{ { - name: "KubernetesAPI", + name: "/api/v1/nodes/{:name}", attributes: map[string]func(*commonv1.AnyValue) bool{ "http.user_agent": func(v *commonv1.AnyValue) bool { return strings.HasPrefix(v.GetStringValue(), "tracing.test") @@ -780,7 +780,7 @@ endpoint: %s`, listener.Addr().String())), os.FileMode(0755)); err != nil { }, expectedTrace: []*spanExpectation{ { - name: "KubernetesAPI", + name: "/api/v1/nodes/{:name}", attributes: map[string]func(*commonv1.AnyValue) bool{ "http.user_agent": func(v *commonv1.AnyValue) bool { return strings.HasPrefix(v.GetStringValue(), "tracing.test") @@ -901,7 +901,7 @@ endpoint: %s`, listener.Addr().String())), os.FileMode(0755)); err != nil { }, expectedTrace: []*spanExpectation{ { - name: "KubernetesAPI", + name: "/api/v1/nodes/{:name}", attributes: map[string]func(*commonv1.AnyValue) bool{ "http.user_agent": func(v *commonv1.AnyValue) bool { return strings.HasPrefix(v.GetStringValue(), "tracing.test")