Sha256: 3d9ae2f88620f71d68697ce7af2971454aea329bf37d3326b4b26ceebc2de0e6

Contents?: true

Size: 657 Bytes

Versions: 4

Compression:

Stored size: 657 Bytes

Contents

# frozen_string_literal: true

module RailsMiniProfiler
  module Tracing
    class Tracer
      def initialize(event)
        @event = event_data(event)
      end

      def trace
        Trace.new(**@event)
      end

      private

      def event_data(event)
        start = (event.time.to_f * 100_000).to_i
        finish = (event.end.to_f * 100_000).to_i
        {
          name: event.name,
          start: start,
          finish: finish,
          duration: finish - start,
          allocations: event.allocations,
          backtrace: Rails.backtrace_cleaner.clean(caller),
          payload: event.payload
        }
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rails_mini_profiler-0.7.0 lib/rails_mini_profiler/tracing/tracer.rb
rails_mini_profiler-0.6.0 lib/rails_mini_profiler/tracing/tracer.rb
rails_mini_profiler-0.5.0 lib/rails_mini_profiler/tracing/tracer.rb
rails_mini_profiler-0 lib/rails_mini_profiler/tracing/tracer.rb