class Ichnite::Logger

Attributes

logger[R]

Public Class Methods

new(logger) click to toggle source
# File lib/ichnite/logger.rb, line 5
def initialize(logger)
  @logger = logger
  @formatter = Formatters::KeyValue.new
end

Public Instance Methods

log(event, opts = {}) click to toggle source
# File lib/ichnite/logger.rb, line 10
def log(event, opts = {})
  emit(Ichnite.context(event).merge(opts))
end

Private Instance Methods

emit(data) click to toggle source
# File lib/ichnite/logger.rb, line 16
def emit(data)
  data.each do |k, v|
    data[k] = v.iso8601 if v.respond_to?(:iso8601)
  end
  @logger.info @formatter.call(data)
end