class Ichnite::Formatters::KeyValue

Public Instance Methods

call(data) click to toggle source
# File lib/ichnite/formatters.rb, line 7
def call(data)
  fields = fields_to_display(data)

  event = fields.map { |key| format(key, data[key]) }
  event.join(' ')
end
fields_to_display(data) click to toggle source
# File lib/ichnite/formatters.rb, line 14
def fields_to_display(data)
  data.keys
end
format(key, value) click to toggle source
# File lib/ichnite/formatters.rb, line 18
def format(key, value)
  if key == :error
    # Exactly preserve the previous output
    # Parsing this can be ambigious if the error messages contains
    # a single quote
    value = "'#{value}'"
  elsif value.is_a? Float
    value = Kernel.format('%.2f', value)
  end

  "#{key}=#{value}"
end