lib/tee_logger.rb in tee_logger-2.4.0 vs lib/tee_logger.rb in tee_logger-2.4.1
- old
+ new
@@ -1,121 +1,122 @@
-require 'tee_logger/version'
-require 'tee_logger/constants'
-require 'logger'
-
-# namespace
-module TeeLogger
- # shortcut for TeeLogger::TeeLogger.new
- # @see TeeLogger
- def self.new(logdev = DEFAULT_FILE, shift_age = 0, shift_size = 1_048_576)
- TeeLogger.new(logdev, shift_age, shift_size)
- end
-
- # main
- # @see http://www.rubydoc.info/stdlib/logger/Logger Logger
- class TeeLogger
- # @param logdev String
- # @param shift_age Integer
- # @param shift_size Integer
- # @see Logger#initialize
- def initialize(logdev = DEFAULT_FILE, shift_age = 0, shift_size = 1_048_576)
- @logfile = Logger.new(logdev, shift_age, shift_size)
- @console = Logger.new($stdout)
- end
-
- class << self
- private
-
- # @!macro [attach] loglevel_check_methods
- # @!method $1(name)
- # @return [Boolean]
- def define_loglevel_check_methods(name)
- define_method(name) do
- @logfile.send(name)
- @console.send(name)
- end
- end
-
- # @!macro [attach] logging_methods
- # @!method $1(progname = nil, &block)
- # logging $1 level message.
- # @return true
- def define_logging_methods(name)
- define_method(name) do |progname = nil, &block|
- @logfile.send(name, progname, &block)
- @console.send(name, progname, &block)
- end
- end
- end
-
- define_loglevel_check_methods :debug?
- define_loglevel_check_methods :info?
- define_loglevel_check_methods :warn?
- define_loglevel_check_methods :error?
- define_loglevel_check_methods :fatal?
-
- define_logging_methods :debug
- define_logging_methods :info
- define_logging_methods :warn
- define_logging_methods :error
- define_logging_methods :fatal
-
- # TODO: which value?
- # @return [Integer]
- def level
- @logfile.level
- @console.level
- end
-
- # @param level [Integer]
- def level=(level)
- @logfile.level = level
- @console.level = level
- end
- alias_method :sev_threshold, :level
- alias_method :sev_threshold=, :level=
-
- # TODO: both values?
- # @return [String]
- def progname
- @logfile.progname
- @console.progname
- end
-
- # @param name [String, Symbol]
- def progname=(name = nil)
- @logfile.progname = name
- @console.progname = name
- end
-
- # TODO: both values?
- # @return [String]
- def formatter
- @logfile.formatter
- @console.formatter
- end
-
- # @param formatter
- def formatter=(formatter)
- @logfile.formatter = formatter
- @console.formatter = formatter
- end
-
- # @todo Too miscellaneous
- # @param target [String, Symbol]
- def disable(target)
- if block_given?
- disable(target)
- yield
- enable(target)
- else
- instance_variable_get("@#{target}").formatter = proc { |_, _, _, _| '' }
- end
- end
-
- # @todo Too miscellaneous
- # @param target [String, Symbol]
- def enable(target)
- instance_variable_get("@#{target}").formatter = Logger::Formatter.new
- end
- end
-end
+require 'tee_logger/version'
+require 'tee_logger/constants'
+require 'logger'
+
+# namespace
+module TeeLogger
+ # shortcut for TeeLogger::TeeLogger.new
+ # @see TeeLogger
+ def self.new(logdev = DEFAULT_FILE, shift_age = 0, shift_size = 1_048_576)
+ TeeLogger.new(logdev, shift_age, shift_size)
+ end
+
+ # main
+ # @see http://www.rubydoc.info/stdlib/logger/Logger Logger
+ class TeeLogger
+ # @param logdev String
+ # @param shift_age Integer
+ # @param shift_size Integer
+ # @see Logger#initialize
+ def initialize(logdev = DEFAULT_FILE, shift_age = 0, shift_size = 1_048_576)
+ @logfile = Logger.new(logdev, shift_age, shift_size)
+ @console = Logger.new($stdout)
+ end
+
+ class << self
+ private
+
+ # @!macro [attach] loglevel_check_methods
+ # @!method $1(name)
+ # @return [Boolean]
+ def define_loglevel_check_methods(name)
+ define_method(name) do
+ @logfile.send(name)
+ @console.send(name)
+ end
+ end
+
+ # @!macro [attach] logging_methods
+ # @!method $1(progname = nil, &block)
+ # logging $1 level message.
+ # @return true
+ def define_logging_methods(name)
+ define_method(name) do |progname = nil, &block|
+ @logfile.send(name, progname, &block)
+ @console.send(name, progname, &block)
+ end
+ end
+ end
+
+ define_loglevel_check_methods :debug?
+ define_loglevel_check_methods :info?
+ define_loglevel_check_methods :warn?
+ define_loglevel_check_methods :error?
+ define_loglevel_check_methods :fatal?
+
+ define_logging_methods :debug
+ define_logging_methods :info
+ define_logging_methods :warn
+ define_logging_methods :error
+ define_logging_methods :fatal
+
+ # TODO: which value?
+ # @return [Integer]
+ def level
+ @logfile.level
+ @console.level
+ end
+
+ # @param level [Integer]
+ def level=(level)
+ @logfile.level = level
+ @console.level = level
+ end
+ alias_method :sev_threshold, :level
+ alias_method :sev_threshold=, :level=
+
+ # TODO: both values?
+ # @return [String]
+ def progname
+ @logfile.progname
+ @console.progname
+ end
+
+ # @param name [String, Symbol]
+ def progname=(name = nil)
+ @logfile.progname = name
+ @console.progname = name
+ end
+
+ # TODO: both values?
+ # @return [String]
+ def formatter
+ @logfile.formatter
+ @console.formatter
+ end
+
+ # @param formatter
+ def formatter=(formatter)
+ @logfile.formatter = formatter
+ @console.formatter = formatter
+ end
+
+ # @todo Too miscellaneous
+ # @param target [String, Symbol]
+ # @yield before target disable, after target enable.
+ def disable(target)
+ if block_given?
+ disable(target)
+ yield
+ enable(target)
+ else
+ instance_variable_get("@#{target}").formatter = proc { |_, _, _, _| '' }
+ end
+ end
+
+ # @todo Too miscellaneous
+ # @param target [String, Symbol]
+ def enable(target)
+ instance_variable_get("@#{target}").formatter = Logger::Formatter.new
+ end
+ end
+end