Module: Log

Defined in:
lib/kknife/log.rb

Overview

Log - a global logger instance for classes

Allows you to call a single logger instance easily from your classes

class Yours
  include Log
  def method
    log.info 'something'
  end
end

Constant Summary collapse

DefaultIO =
STDOUT

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.createObject

create a new logger



47
48
49
50
51
# File 'lib/kknife/log.rb', line 47

def self.create
  l = Logger.new DefaultIO
  l.level = Logger::INFO
  l
end

.logObject

return the singleton or create it



54
55
56
# File 'lib/kknife/log.rb', line 54

def self.log
  @log ||= create
end

.replace(io) ⇒ Object

replace the logger with a new target



40
41
42
43
44
# File 'lib/kknife/log.rb', line 40

def self.replace( io )
  l = Logger.new io
  l.level = @log.level
  @log = l
end

Instance Method Details

#logObject

returns the singleton



35
36
37
# File 'lib/kknife/log.rb', line 35

def log
  Logging.log
end