From f86c0f49851e096f99e4e1662a2369c4983d56cb Mon Sep 17 00:00:00 2001 From: Vincent Boutour Date: Sun, 9 Oct 2022 18:37:57 +0200 Subject: [PATCH] feat: span, span everywhere Signed-off-by: Vincent Boutour --- pkg/crud/browse.go | 8 ++++++++ pkg/crud/get.go | 5 ++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/pkg/crud/browse.go b/pkg/crud/browse.go index 055c0f4b..b05d9caa 100644 --- a/pkg/crud/browse.go +++ b/pkg/crud/browse.go @@ -12,9 +12,14 @@ import ( "github.com/ViBiOh/httputils/v4/pkg/concurrent" "github.com/ViBiOh/httputils/v4/pkg/logger" "github.com/ViBiOh/httputils/v4/pkg/renderer" + "github.com/ViBiOh/httputils/v4/pkg/tracer" + "go.opentelemetry.io/otel/trace" ) func (a App) browse(ctx context.Context, request provider.Request, item absto.Item, message renderer.Message) (renderer.Page, error) { + ctx, end := tracer.StartSpan(ctx, a.tracer, "browse", trace.WithSpanKind(trace.SpanKindInternal)) + defer end() + var ( previous provider.RenderItem next provider.RenderItem @@ -63,6 +68,9 @@ func (a App) browse(ctx context.Context, request provider.Request, item absto.It } func (a App) getFilesPreviousAndNext(ctx context.Context, item absto.Item, request provider.Request) (items []absto.Item, previous provider.RenderItem, next provider.RenderItem) { + ctx, end := tracer.StartSpan(ctx, a.tracer, "get_previous_next", trace.WithSpanKind(trace.SpanKindInternal)) + defer end() + var err error items, err = a.storageApp.List(ctx, item.Dir()) if err != nil { diff --git a/pkg/crud/get.go b/pkg/crud/get.go index b194bb0c..26f67923 100644 --- a/pkg/crud/get.go +++ b/pkg/crud/get.go @@ -84,6 +84,9 @@ func (a App) handleFile(w http.ResponseWriter, r *http.Request, request provider } func (a App) serveFile(w http.ResponseWriter, r *http.Request, item absto.Item) error { + _, end := tracer.StartSpan(r.Context(), a.tracer, "file", trace.WithSpanKind(trace.SpanKindInternal)) + defer end() + etag, ok := provider.EtagMatch(w, r, sha.New(item)) if ok { return nil @@ -178,7 +181,7 @@ func (a App) serveGeoJSON(w http.ResponseWriter, r *http.Request, request provid return } - ctx, end := tracer.StartSpan(r.Context(), a.tracer, "geojson") + ctx, end := tracer.StartSpan(r.Context(), a.tracer, "geojson", trace.WithSpanKind(trace.SpanKindInternal)) defer end() var hash string