Sha256: 5e18aafe5dac75c560762127c4059c13ec13b4a5b03188edb45f9083557458a4

Contents?: true

Size: 852 Bytes

Versions: 2

Compression:

Stored size: 852 Bytes

Contents

module Lens
  class EventFormatter
    def initialize(event, records)
      @event = event
      @records = records
    end

    def json_formatted
      formatted.to_json
    end

    def formatted
      @formatted ||= { data: event_data }
    end

  private

    def event_payload
      @event_payload ||= @event.payload
    end

    def event_data
      @event_data ||=
      {
        action: event_payload[:action],
        controller: event_payload[:controller],
        params: event_payload[:params],
        method: event_payload[:method],
        url: event_payload[:path],
        records: @records,
        time: Time.now,
        start: @event.time.to_f,
        end: @event.end.to_f,
        duration: @event.duration,
        event_name: @event.name,
        meta: {
          client_version: VERSION
        }
      }
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
lens-0.0.6 lib/lens/event_formatter.rb
lens-0.0.5 lib/lens/event_formatter.rb