in operatortrace-go/pkg/client/span_helpers.go [100:115]
func startSpanFromContextList(ctx context.Context, logger logr.Logger, tracer trace.Tracer, obj client.ObjectList, operationName string) (context.Context, trace.Span) {
span := trace.SpanFromContext(ctx)
if span.SpanContext().IsValid() {
spanContext := trace.NewSpanContext(trace.SpanContextConfig{
TraceID: span.SpanContext().TraceID(),
SpanID: span.SpanContext().SpanID(),
})
ctx = trace.ContextWithRemoteSpanContext(ctx, spanContext)
ctx, span = tracer.Start(ctx, operationName)
return trace.ContextWithSpan(ctx, span), span
}
// Create a new span
ctx, span = tracer.Start(ctx, operationName)
return ctx, span
}