Module: TeeLogger
- Extended by:
- Configration
- Defined in:
- lib/tee_logger.rb,
lib/tee_logger/utils.rb,
lib/tee_logger/version.rb,
lib/tee_logger/constants.rb,
lib/tee_logger/configuration.rb,
lib/tee_logger/tee_logger_base.rb
Overview
namespace
Defined Under Namespace
Modules: Configration, Utils Classes: IncorrectNameError, IncorrectOptionError, ParsedOption, TeeLoggerBase
Constant Summary collapse
- VERSION =
version number
'3.2.2'.freeze
- DEFAULT_FILE =
no param of filename, set this filename
'./tee_logger.log'.freeze
- CONFIGURED_ATTRIBUTES =
configured attributes
[:level, :progname, :formatter, :datetime_format].freeze
- LOGGING_METHODS =
implements targets
[:debug, :info, :warn, :error, :fatal].freeze
- LOGDEV_NAMES =
defined logdev names
[:console, :logfile].freeze
- LOGDEV_REVERSE =
defined paired of logdev name
{ console: :logfile, logfile: :console }.freeze
- FORMATTER_FOR_DISABLING =
empty format
proc { |_severity, _time, _progname, _msg| '' }
Class Method Summary collapse
-
.extended(mod) ⇒ Object
define singleton method .logger for your module.
-
.included(klass) ⇒ Object
define instance method #logger for your class.
-
.new(logdev = nil, shift_age = 0, shift_size = 1_048_576) ⇒ TeeLogger::TeeLoggerBase
shortcut for TeeLogger::TeeLoggerBase.new.
Methods included from Configration
configuration_reset, configure, datetime_format, formatter, level, logdev, logdev=, progname
Class Method Details
.extended(mod) ⇒ Object
define singleton method .logger for your module. and TeeLogger.progname is your module name.
24 25 26 27 28 29 30 31 |
# File 'lib/tee_logger.rb', line 24 def self.extended(mod) mod.define_singleton_method(:logger) do return @logger if @logger @logger = TeeLogger.new @logger.progname = TeeLogger.progname || mod @logger 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 self.included(klass) klass.class_eval do define_method(:logger) do return @logger if @logger @logger = TeeLogger.new @logger.progname = TeeLogger.progname || klass.name @logger end end end |
.new(logdev = nil, shift_age = 0, shift_size = 1_048_576) ⇒ TeeLogger::TeeLoggerBase
shortcut for TeeLogger::TeeLoggerBase.new
18 19 20 |
# File 'lib/tee_logger.rb', line 18 def self.new(logdev = nil, shift_age = 0, shift_size = 1_048_576) TeeLoggerBase.new(logdev, shift_age, shift_size) end |