class Pepys::Logger

Constants

REFUSE_TO_FORWARD

Attributes

hostname[RW]
logger[RW]
program_name[RW]

Public Class Methods

new(program_name, io, hostname: Socket.gethostname) click to toggle source
# File lib/pepys/logger.rb, line 11
def initialize(program_name, io, hostname: Socket.gethostname)
  self.program_name = program_name
  self.hostname = hostname
  self.logger = ::Logger.new(io)
  logger.formatter = Formatter.new(self)
end

Public Instance Methods

base_fields() click to toggle source
# File lib/pepys/logger.rb, line 18
def base_fields
  {
    name: program_name,
    pid: Process.pid,
    hostname: hostname,
  }
end
method_missing(meffod, *args) click to toggle source
Calls superclass method
# File lib/pepys/logger.rb, line 30
def method_missing(meffod, *args)
  return super if REFUSE_TO_FORWARD.include?(meffod)

  if block_given?
    logger.public_send(meffod, *args, &Proc.new)
  else
    logger.public_send(meffod, *args)
  end
end
respond_to_missing?(meffod) click to toggle source
# File lib/pepys/logger.rb, line 26
def respond_to_missing?(meffod)
  logger.respond_to?(meffod) && !REFUSE_TO_FORWARD.include?(meffod)
end