Class: ActiveSupport::Logger
- Includes:
- LoggerThreadSafeLevel, LoggerSilence
- Defined in:
- lib/active_support/logger.rb
Defined Under Namespace
Classes: SimpleFormatter
Class Method Summary collapse
-
.broadcast(logger) ⇒ Object
Broadcasts logs to multiple loggers.
Instance Method Summary collapse
- #add(severity, message = nil, progname = nil, &block) ⇒ Object
-
#initialize(*args) ⇒ Logger
constructor
A new instance of Logger.
Methods included from LoggerSilence
Methods included from Concern
#append_features, #class_methods, extended, #included
Methods included from LoggerThreadSafeLevel
#after_initialize, #level, #local_level, #local_level=, #local_log_id
Constructor Details
#initialize(*args) ⇒ Logger
Returns a new instance of Logger.
69 70 71 72 73 |
# File 'lib/active_support/logger.rb', line 69 def initialize(*args) super @formatter = SimpleFormatter.new after_initialize if respond_to? :after_initialize end |
Class Method Details
.broadcast(logger) ⇒ Object
Broadcasts logs to multiple loggers.
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/active_support/logger.rb', line 12 def self.broadcast(logger) # :nodoc: Module.new do define_method(:add) do |*args, &block| logger.add(*args, &block) super(*args, &block) end define_method(:<<) do |x| logger << x super(x) end define_method(:close) do logger.close super() end define_method(:progname=) do |name| logger.progname = name super(name) end define_method(:formatter=) do |formatter| logger.formatter = formatter super(formatter) end define_method(:level=) do |level| logger.level = level super(level) end define_method(:local_level=) do |level| logger.local_level = level if logger.respond_to?(:local_level=) super(level) if respond_to?(:local_level=) end define_method(:silence) do |level = Logger::ERROR, &block| if logger.respond_to?(:silence) && logger.method(:silence).owner != ::Kernel logger.silence(level) do if respond_to?(:silence) && method(:silence).owner != ::Kernel super(level, &block) else block.call(self) end end else if respond_to?(:silence) && method(:silence).owner != ::Kernel super(level, &block) else block.call(self) end end end end end |
Instance Method Details
#add(severity, message = nil, progname = nil, &block) ⇒ Object
75 76 77 78 |
# File 'lib/active_support/logger.rb', line 75 def add(severity, = nil, progname = nil, &block) return true if @logdev.nil? || (severity || UNKNOWN) < level super end |