From 6e2c0c355c1e9b4a128693378a104875a4a8b984 Mon Sep 17 00:00:00 2001 From: Thomas Schubart Date: Mon, 19 Sep 2022 15:35:19 +0000 Subject: [PATCH] [content-service] Additional tracing for prebuild init --- components/content-service/pkg/archive/tar.go | 4 ++++ components/content-service/pkg/storage/gcloud.go | 2 ++ 2 files changed, 6 insertions(+) diff --git a/components/content-service/pkg/archive/tar.go b/components/content-service/pkg/archive/tar.go index e52a611fdea4a1..725e87b9afb802 100644 --- a/components/content-service/pkg/archive/tar.go +++ b/components/content-service/pkg/archive/tar.go @@ -81,6 +81,7 @@ func ExtractTarbal(ctx context.Context, src io.Reader, dst string, opts ...TarOp finished := make(chan bool) m := make(map[string]Info) + unpackSpan := opentracing.StartSpan("unpackTarbal", opentracing.ChildOf(span.Context())) go func() { defer close(finished) for { @@ -124,7 +125,9 @@ func ExtractTarbal(ctx context.Context, src io.Reader, dst string, opts ...TarOp log.WithField("log", string(msg)).Debug("decompressing tar stream log") <-finished + tracing.FinishSpan(unpackSpan, &err) + chownSpan := opentracing.StartSpan("chown", opentracing.ChildOf(span.Context())) // lets create a sorted list of pathes and chown depth first. paths := make([]string, 0, len(m)) for path := range m { @@ -148,6 +151,7 @@ func ExtractTarbal(ctx context.Context, src io.Reader, dst string, opts ...TarOp log.WithError(err).WithField("uid", uid).WithField("gid", gid).WithField("path", p).Debug("cannot chown") } } + tracing.FinishSpan(chownSpan, &err) log.WithField("duration", time.Since(start).Milliseconds()).Debug("untar complete") return nil diff --git a/components/content-service/pkg/storage/gcloud.go b/components/content-service/pkg/storage/gcloud.go index 99a4a34edc0e67..f4e068ab3a5249 100644 --- a/components/content-service/pkg/storage/gcloud.go +++ b/components/content-service/pkg/storage/gcloud.go @@ -197,6 +197,7 @@ func (rs *DirectGCPStorage) download(ctx context.Context, destination string, bk var wg sync.WaitGroup wg.Add(1) + backupSpan := opentracing.StartSpan("downloadBackup", opentracing.ChildOf(span.Context())) go func() { defer wg.Done() @@ -224,6 +225,7 @@ func (rs *DirectGCPStorage) download(ctx context.Context, destination string, bk }() wg.Wait() + tracing.FinishSpan(backupSpan, &err) rc, err := os.Open(filepath.Join(backupDir, obj)) if err != nil {