introduce a proper trace context
Signed-off-by: carlory <baofa.fan@daocloud.io> Co-authored-by: CasperLiu <qiuyuzhe521@gmail.com> Kubernetes-commit: 5b2632f70763aeadfc334df1364946fe39fc10bb
This commit is contained in:
parent
d9db30ee93
commit
1bb7b2e6ab
|
@ -55,6 +55,7 @@ func createHandler(r rest.NamedCreater, scope *RequestScope, admit admission.Int
|
||||||
ctx := req.Context()
|
ctx := req.Context()
|
||||||
// For performance tracking purposes.
|
// For performance tracking purposes.
|
||||||
ctx, span := tracing.Start(ctx, "Create", traceFields(req)...)
|
ctx, span := tracing.Start(ctx, "Create", traceFields(req)...)
|
||||||
|
req = req.WithContext(ctx)
|
||||||
defer span.End(500 * time.Millisecond)
|
defer span.End(500 * time.Millisecond)
|
||||||
|
|
||||||
namespace, name, err := scope.Namer.Name(req)
|
namespace, name, err := scope.Namer.Name(req)
|
||||||
|
|
|
@ -52,6 +52,7 @@ func DeleteResource(r rest.GracefulDeleter, allowsOptions bool, scope *RequestSc
|
||||||
ctx := req.Context()
|
ctx := req.Context()
|
||||||
// For performance tracking purposes.
|
// For performance tracking purposes.
|
||||||
ctx, span := tracing.Start(ctx, "Delete", traceFields(req)...)
|
ctx, span := tracing.Start(ctx, "Delete", traceFields(req)...)
|
||||||
|
req = req.WithContext(ctx)
|
||||||
defer span.End(500 * time.Millisecond)
|
defer span.End(500 * time.Millisecond)
|
||||||
|
|
||||||
namespace, name, err := scope.Namer.Name(req)
|
namespace, name, err := scope.Namer.Name(req)
|
||||||
|
@ -172,6 +173,7 @@ func DeleteCollection(r rest.CollectionDeleter, checkBody bool, scope *RequestSc
|
||||||
return func(w http.ResponseWriter, req *http.Request) {
|
return func(w http.ResponseWriter, req *http.Request) {
|
||||||
ctx := req.Context()
|
ctx := req.Context()
|
||||||
ctx, span := tracing.Start(ctx, "Delete", traceFields(req)...)
|
ctx, span := tracing.Start(ctx, "Delete", traceFields(req)...)
|
||||||
|
req = req.WithContext(ctx)
|
||||||
defer span.End(500 * time.Millisecond)
|
defer span.End(500 * time.Millisecond)
|
||||||
|
|
||||||
namespace, err := scope.Namer.Namespace(req)
|
namespace, err := scope.Namer.Namespace(req)
|
||||||
|
|
|
@ -58,6 +58,7 @@ func getResourceHandler(scope *RequestScope, getter getterFunc) http.HandlerFunc
|
||||||
return func(w http.ResponseWriter, req *http.Request) {
|
return func(w http.ResponseWriter, req *http.Request) {
|
||||||
ctx := req.Context()
|
ctx := req.Context()
|
||||||
ctx, span := tracing.Start(ctx, "Get", traceFields(req)...)
|
ctx, span := tracing.Start(ctx, "Get", traceFields(req)...)
|
||||||
|
req = req.WithContext(ctx)
|
||||||
defer span.End(500 * time.Millisecond)
|
defer span.End(500 * time.Millisecond)
|
||||||
|
|
||||||
namespace, name, err := scope.Namer.Name(req)
|
namespace, name, err := scope.Namer.Name(req)
|
||||||
|
@ -172,6 +173,7 @@ func ListResource(r rest.Lister, rw rest.Watcher, scope *RequestScope, forceWatc
|
||||||
ctx := req.Context()
|
ctx := req.Context()
|
||||||
// For performance tracking purposes.
|
// For performance tracking purposes.
|
||||||
ctx, span := tracing.Start(ctx, "List", traceFields(req)...)
|
ctx, span := tracing.Start(ctx, "List", traceFields(req)...)
|
||||||
|
req = req.WithContext(ctx)
|
||||||
|
|
||||||
namespace, err := scope.Namer.Namespace(req)
|
namespace, err := scope.Namer.Namespace(req)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -66,6 +66,7 @@ func PatchResource(r rest.Patcher, scope *RequestScope, admit admission.Interfac
|
||||||
ctx := req.Context()
|
ctx := req.Context()
|
||||||
// For performance tracking purposes.
|
// For performance tracking purposes.
|
||||||
ctx, span := tracing.Start(ctx, "Patch", traceFields(req)...)
|
ctx, span := tracing.Start(ctx, "Patch", traceFields(req)...)
|
||||||
|
req = req.WithContext(ctx)
|
||||||
defer span.End(500 * time.Millisecond)
|
defer span.End(500 * time.Millisecond)
|
||||||
|
|
||||||
// Do this first, otherwise name extraction can fail for unrecognized content types
|
// Do this first, otherwise name extraction can fail for unrecognized content types
|
||||||
|
|
|
@ -98,6 +98,7 @@ func SerializeObject(mediaType string, encoder runtime.Encoder, hw http.Response
|
||||||
attribute.String("protocol", req.Proto),
|
attribute.String("protocol", req.Proto),
|
||||||
attribute.String("mediaType", mediaType),
|
attribute.String("mediaType", mediaType),
|
||||||
attribute.String("encoder", string(encoder.Identifier())))
|
attribute.String("encoder", string(encoder.Identifier())))
|
||||||
|
req = req.WithContext(ctx)
|
||||||
defer span.End(5 * time.Second)
|
defer span.End(5 * time.Second)
|
||||||
|
|
||||||
w := &deferredResponseWriter{
|
w := &deferredResponseWriter{
|
||||||
|
|
|
@ -53,6 +53,7 @@ func UpdateResource(r rest.Updater, scope *RequestScope, admit admission.Interfa
|
||||||
ctx := req.Context()
|
ctx := req.Context()
|
||||||
// For performance tracking purposes.
|
// For performance tracking purposes.
|
||||||
ctx, span := tracing.Start(ctx, "Update", traceFields(req)...)
|
ctx, span := tracing.Start(ctx, "Update", traceFields(req)...)
|
||||||
|
req = req.WithContext(ctx)
|
||||||
defer span.End(500 * time.Millisecond)
|
defer span.End(500 * time.Millisecond)
|
||||||
|
|
||||||
namespace, name, err := scope.Namer.Name(req)
|
namespace, name, err := scope.Namer.Name(req)
|
||||||
|
|
Loading…
Reference in New Issue