Module: JsonTaggedLogger::Logger

Defined in:
lib/json_tagged_logger/logger.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.new(logger, pretty_print: false) ⇒ Object



5
6
7
8
9
# File 'lib/json_tagged_logger/logger.rb', line 5

def self.new(logger, pretty_print: false)
  logger = logger.clone
  logger.formatter =  JsonTaggedLogger::Formatter.new(pretty_print: pretty_print)
  logger.extend(self)
end

Instance Method Details

#tagged(*tags) ⇒ Object



13
14
15
16
17
18
19
20
21
22
# File 'lib/json_tagged_logger/logger.rb', line 13

def tagged(*tags)
  if block_given?
    formatter.tagged(*tags) { yield self }
  else
    logger = JsonTaggedLogger::Logger.new(self)
    logger.formatter = JsonTaggedLogger::Formatter.new
    logger.push_tags(*formatter.current_tags, *tags)
    logger
  end
end