Sha256: ab922af00a63fe790cd4108279f1408cf6d42ac13d95b78889368a6ffd0862bc
Contents?: true
Size: 1.09 KB
Versions: 2
Compression:
Stored size: 1.09 KB
Contents
module AbAdmin module Utils module Logger class ExtendedLogger < ::Logger def exception(e, options={}) message = "#{e.message} #{"DATA:#{options[:data].inspect}" if options && options[:data]}" backtrace = e.backtrace.map { |l| "#{' ' * 2}#{l}" }.join("\n") if e.backtrace error("#{e.class} #{message}\n#{backtrace}\n\n") end def puts(msg) debug msg end def reopen @logdev = LogDevice.new(@logdev.filename) end end class BasicFormatter def call(severity, time, _, msg) "#{msg}\n" end end class Formatter FORMAT = "[%s] %5s %s\n".freeze DATETIME_FORMAT = '%Y-%m-%dT%H:%M:%S.%3N'.freeze def call(severity, time, _, msg) FORMAT % [time.strftime(DATETIME_FORMAT), severity, msg] end end def self.for_file(filename, formatter: nil) logger = ExtendedLogger.new(Rails.root.join('log', filename)) logger.formatter = formatter || Formatter.new logger end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ab_admin-0.11.0 | lib/ab_admin/utils/logger.rb |
ab_admin-0.10.0 | lib/ab_admin/utils/logger.rb |