Module: KeyValueLogging::TaggedLogging

Defined in:
lib/key_value_logging/tagged_logging.rb

Defined Under Namespace

Modules: Formatter

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.new(logger, key_value_format = 'default') {|logger| ... } ⇒ Object

Yields:

  • (logger)


62
63
64
65
66
67
68
69
# File 'lib/key_value_logging/tagged_logging.rb', line 62

def self.new(logger, key_value_format = 'default')
  yield(logger) if block_given?
  # Ensure we set a default formatter so we aren't extending nil!
  logger.formatter ||= ActiveSupport::Logger::SimpleFormatter.new
  logger.formatter.extend Formatter
  logger.formatter.key_value_format = key_value_format
  logger.extend(self)
end

Instance Method Details

#flushObject



77
78
79
80
# File 'lib/key_value_logging/tagged_logging.rb', line 77

def flush
  clear_tags!
  super if defined?(super)
end

#tagged(tags = {}) ⇒ Object



73
74
75
# File 'lib/key_value_logging/tagged_logging.rb', line 73

def tagged(tags = {})
  formatter.tagged(tags) { yield self }
end