class ElasticAPM::Transport::Serializers::TransactionSerializer

@api private

def build(transaction)

rubocop:disable Metrics/MethodLength
def build(transaction)
  {
    transaction: {
      id: transaction.id,
      trace_id: transaction.trace_id,
      parent_id: transaction.parent_id,
      name: transaction.name,
      type: transaction.type,
      result: transaction.result.to_s,
      duration: ms(transaction.duration),
      timestamp: transaction.timestamp,
      sampled: transaction.sampled?,
      context: transaction.context.to_h,
      span_count: {
        started: transaction.started_spans,
        dropped: transaction.dropped_spans
      }
    }
  }
end