code: func StartSpanFromHeaders(headers tasks.Headers, operationName string) opentracing.Span {
  	// Try to extract the span context from the carrier.
  	spanContext, err := opentracing.GlobalTracer().Extract(opentracing.TextMap, headers)
  
  	// Create a new span from the span context if found or start a new trace with the function name.
  	// For clarity add the machinery component tag.
  	span := opentracing.StartSpan(
  		operationName,
  		ConsumerOption(spanContext),
  		MachineryTag,
  	)
  
  	// Log any error but don't fail
  	if err != nil {
  		span.LogFields(opentracing_log.Error(err))
  	}
  
  	return span
  }
docs: // StartSpanFromHeaders will extract a span from the signature headers
  // and start a new span with the given operation name.