class MrLogaLoga::LoggerProxy

Description

A proxy that attaches contextual information to the underlying logger when called.

@api private

Public Class Methods

new(logger, context_proc) click to toggle source
# File lib/mr_loga_loga/logger_proxy.rb, line 15
def initialize(logger, context_proc)
  @logger = logger
  @context_proc = context_proc
end

Public Instance Methods

add(severity, message = nil, progname = nil, **context, &block) click to toggle source
# File lib/mr_loga_loga/logger_proxy.rb, line 20
def add(severity, message = nil, progname = nil, **context, &block)
  severity ||= UNKNOWN
  return true unless @logger.log?(severity)

  context = @context_proc.call.merge(context)

  @logger.add(severity, message, progname, **context, &block)
end
Also aliased as: log
log(severity, message = nil, progname = nil, **context, &block)
Alias for: add