Sha256: 0aacd40a8d6b257e5b86be0194ae2cea2162d67880a02c83f9832766ec8d35ea
Contents?: true
Size: 960 Bytes
Versions: 2
Compression:
Stored size: 960 Bytes
Contents
module Hickory module Formatters class JSON < ::Logger::Formatter def initialize(options = {}) @key_mappings = Hash.new.tap { |mapping| mapping[:message] = options.fetch(:message_key, :message) mapping[:severity] = options.fetch(:severity_key, :level) mapping[:timestamp] = options.fetch(:timestamp_key, :timestamp) mapping[:env] = options.fetch(:env_key, :env) } end def call(severity, time, progname, msg) line = msg.tap { |message| message[@key_mappings[:message]] = msg.delete(:message) unless @key_mappings[:message] == :message message[@key_mappings[:timestamp]] = time message[@key_mappings[:severity]] = severity message[@key_mappings[:env]] = Rails.env message[:progname] = progname if progname.present? } line.to_json end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
hickory-0.1.1 | lib/hickory/formatters/json.rb |
hickory-0.1.0 | lib/hickory/formatters/json.rb |