Sha256: e78f7d51366f5a3ed80de46db57ef28db226a76f13a2722b2e3fd7d473ce4483
Contents?: true
Size: 927 Bytes
Versions: 15
Compression:
Stored size: 927 Bytes
Contents
# module as namespace module Fusuma require 'logger' require 'singleton' # logger separate between stdout and strerr class MultiLogger < Logger include Singleton attr_reader :err_logger attr_accessor :debug_mode def initialize super(STDOUT) @err_logger = Logger.new(STDERR) @debug_mode = false end def info(msg) super(msg) end def debug(msg) return unless debug_mode? super(msg) end def warn(msg) return unless debug_mode? err_logger.warn(msg) end def error(msg) err_logger.error(msg) end def debug_mode? debug_mode end class << self def info(msg) instance.info(msg) end def debug(msg) instance.debug(msg) end def warn(msg) instance.warn(msg) end def error(msg) instance.error(msg) end end end end
Version data entries
15 entries across 15 versions & 1 rubygems