Sha256: 35334f757d50b7de2cb80061b9e4e5c94ea7426e7f013fe1f32dfb4afd6f7aa1
Contents?: true
Size: 1001 Bytes
Versions: 52
Compression:
Stored size: 1001 Bytes
Contents
module God class SimpleLogger DEBUG = 2 INFO = 4 WARN = 8 ERROR = 16 FATAL = 32 SEV_LABEL = {DEBUG => 'DEBUG', INFO => 'INFO', WARN => 'WARN', ERROR => 'ERROR', FATAL => 'FATAL'} attr_accessor :datetime_format, :level def initialize(io) @io = io @level = INFO @datetime_format = "%Y-%m-%d %H:%M:%S" end def output(level, msg) return if level < self.level time = Time.now.strftime(self.datetime_format) label = SEV_LABEL[level] @io.print("#{label[0..0]} [#{time}] #{label.rjust(5)}: #{msg}\n") end def fatal(msg) self.output(FATAL, msg) end def error(msg) self.output(ERROR, msg) end def warn(msg) self.output(WARN, msg) end def info(msg) self.output(INFO, msg) end def debug(msg) self.output(DEBUG, msg) end end end
Version data entries
52 entries across 52 versions & 19 rubygems