class ElasticAPM::TraceContext

def trace_context_from_metadata(metadata)

def trace_context_from_metadata(metadata)
  return unless (header = metadata['elastic-apm-traceparent'] ||
    metadata['traceparent'])
  parent = TraceContext::Traceparent.parse(header)
  state =
    if (header = metadata['tracestate'])
      TraceContext::Tracestate.parse(header)
    end
  new(traceparent: parent, tracestate: state)
end