Skip to content

Commit

Permalink
change startRequestSpan in httptrace
Browse files Browse the repository at this point in the history
  • Loading branch information
rachelyangdog committed Feb 7, 2025
1 parent 8c5cf4f commit 35ccc89
Showing 1 changed file with 13 additions and 19 deletions.
32 changes: 13 additions & 19 deletions contrib/internal/httptrace/httptrace.go
Original file line number Diff line number Diff line change
Expand Up @@ -86,25 +86,6 @@ func StartRequestSpan(r *http.Request, opts ...ddtrace.StartSpanOption) (tracer.
}
}

// Propagate baggage *before* starting the span.
if inferredProxySpan == nil {
spanParentCtx, spanParentErr := tracer.Extract(tracer.HTTPHeadersCarrier(r.Header))
if spanParentErr == nil {
baggageMap := make(map[string]string)
spanParentCtx.ForeachBaggageItem(func(k, v string) bool {
baggageMap[k] = v
return true
})
if len(baggageMap) > 0 {
ctx := r.Context()
for k, v := range baggageMap {
ctx = baggage.Set(ctx, k, v)
}
r = r.WithContext(ctx)
}
}
}

nopts = append(nopts,
func(ssCfg *ddtrace.StartSpanConfig) {
if ssCfg.Tags == nil {
Expand All @@ -128,6 +109,19 @@ func StartRequestSpan(r *http.Request, opts ...ddtrace.StartSpanOption) (tracer.
tracer.WithSpanLinks(spanLinksCtx.SpanLinks())(ssCfg)
}
tracer.ChildOf(spanParentCtx)(ssCfg)

baggageMap := make(map[string]string)
spanParentCtx.ForeachBaggageItem(func(k, v string) bool {
baggageMap[k] = v
return true
})
if len(baggageMap) > 0 {
ctx := r.Context()
for k, v := range baggageMap {
ctx = baggage.Set(ctx, k, v)
}
r = r.WithContext(ctx)
}
}
}

Expand Down

0 comments on commit 35ccc89

Please sign in to comment.