Class: Browserctl::MultiLogger

Inherits:
Object
  • Object
show all
Defined in:
lib/browserctl/logger.rb

Instance Method Summary collapse

Constructor Details

#initialize(*loggers) ⇒ MultiLogger

Returns a new instance of MultiLogger.



15
16
17
# File 'lib/browserctl/logger.rb', line 15

def initialize(*loggers)
  @loggers = loggers
end

Instance Method Details

#debug(msg = nil) ⇒ Object

Delegate to each logger; swallow individual write failures so a broken file logger never crashes the daemon or drops a client response.



21
# File 'lib/browserctl/logger.rb', line 21

def debug(msg = nil, &) = @loggers.each { |l| l.debug(msg, &) rescue nil } # rubocop:disable Style/RescueModifier

#error(msg = nil) ⇒ Object

rubocop:disable Style/RescueModifier



24
# File 'lib/browserctl/logger.rb', line 24

def error(msg = nil, &) = @loggers.each { |l| l.error(msg, &) rescue nil } # rubocop:disable Style/RescueModifier

#info(msg = nil) ⇒ Object

rubocop:disable Style/RescueModifier



22
# File 'lib/browserctl/logger.rb', line 22

def info(msg = nil, &)  = @loggers.each { |l| l.info(msg, &)  rescue nil } # rubocop:disable Style/RescueModifier

#levelObject



26
# File 'lib/browserctl/logger.rb', line 26

def level = @loggers.first&.level

#level=(lvl) ⇒ Object



28
29
30
# File 'lib/browserctl/logger.rb', line 28

def level=(lvl)
  @loggers.each { |l| l.level = lvl }
end

#warn(msg = nil) ⇒ Object

rubocop:disable Style/RescueModifier



23
# File 'lib/browserctl/logger.rb', line 23

def warn(msg = nil, &)  = @loggers.each { |l| l.warn(msg, &)  rescue nil } # rubocop:disable Style/RescueModifier