Module: TeeLogger

Defined in:
lib/tee_logger.rb,
lib/tee_logger/utils.rb,
lib/tee_logger/version.rb,
lib/tee_logger/constants.rb,
lib/tee_logger/tee_logger_base.rb

Overview

namespace

Defined Under Namespace

Modules: Utils Classes: IncorrectNameError, IncorrectOptionError, ParsedOption, TeeLoggerBase

Constant Summary collapse

VERSION =

version number

'3.1.2'
DEFAULT_FILE =

no param of filename, set this filename

'./tee_logger.log'
LOGGING_METHODS =

Implements targets

[:debug, :info, :warn, :error, :fatal]
LOGDEV_NAMES =

defined logdev names

[:console, :logfile]
LOGDEV_REVERSE =

defined paired of logdev name

{ console: :logfile, logfile: :console }
FORMATTER_FOR_DISABLING =

empty format

proc { |_severity, _time, _progname, _msg| '' }

Class Method Summary collapse

Class Method Details

.extended(mod) ⇒ Object

define singleton method .logger for your module. and TeeLogger.progname is your module name.



22
23
24
25
26
27
28
29
30
31
# File 'lib/tee_logger.rb', line 22

def extended(mod)
  mod.class_eval do
    define_singleton_method(:logger) do |logdev = DEFAULT_FILE|
      return @logger if @logger
      @logger = TeeLoggerBase.new(logdev)
      @logger.progname = self
      @logger
    end
  end
end

.included(klass) ⇒ Object

define instance method #logger for your class. and TeeLogger.progname is your class name.



35
36
37
38
39
40
41
42
43
44
# File 'lib/tee_logger.rb', line 35

def included(klass)
  klass.class_eval do
    define_method(:logger) do |logdev = DEFAULT_FILE|
      return @logger if @logger
      @logger = TeeLoggerBase.new(logdev)
      @logger.progname = self.class.name
      @logger
    end
  end
end

.new(logdev = DEFAULT_FILE, shift_age = 0, shift_size = 1_048_576) ⇒ TeeLogger::TeeLoggerBase

shortcut for TeeLogger::TeeLoggerBase.new

Parameters:

  • logdev (String) (defaults to: DEFAULT_FILE)
  • shift_age (Integer) (defaults to: 0)
  • shift_size (Integer) (defaults to: 1_048_576)

Returns:

See Also:



16
17
18
# File 'lib/tee_logger.rb', line 16

def new(logdev = DEFAULT_FILE, shift_age = 0, shift_size = 1_048_576)
  TeeLoggerBase.new(logdev, shift_age, shift_size)
end