class Mallard::Logger

Public Class Methods

new(logfile) click to toggle source
Calls superclass method
# File lib/mallard/logger.rb, line 13
def initialize (logfile)
    full    = "#{@@prefix}/#{logfile}"
    dir     = File.dirname(full)
    @host   = Socket.gethostname.split(/\./).first
    begin
        FileUtils.mkpath(dir) unless test(?d, dir)
        super("#{@@prefix}/#{logfile}", 'daily')
    rescue Errno::EACCES
        Kernel.warn "Permission to create/access log denied.  Logging to stderr."
        super(STDERR)
    end
    self.formatter = proc do |severity, datetime, progname, msg|
        "#{severity[0]}, [#{datetime.strftime("%F %T")}##{@host}:#{$$}] #{severity} -- : #{msg}\n"
    end
end