Class: ConsoleLogger

Inherits:
Logger show all
Defined in:
lib/buzzcore/logging.rb

Overview

Logger that mostly works like a STDOUT logger, except that warnings and above get sent to STDERR instead

Defined Under Namespace

Classes: ReportFormatter

Instance Attribute Summary

Attributes inherited from Logger

#logdev

Instance Method Summary collapse

Constructor Details

#initialize(aErrLevel = Severity::WARN) ⇒ ConsoleLogger

Returns a new instance of ConsoleLogger.



127
128
129
130
131
132
133
134
135
# File 'lib/buzzcore/logging.rb', line 127

def initialize(aErrLevel = Severity::WARN)
super(STDOUT)
  self.formatter = ReportFormatter.new
self.level = Severity::INFO
self << "\n"
@err_logger = Logger.new(STDERR)
@err_level = aErrLevel
@err_logger.formatter = ReportFormatter.new
end

Instance Method Details

#add(severity, message = nil, progname = nil, &block) ⇒ Object Also known as: log



138
139
140
141
142
143
144
# File 'lib/buzzcore/logging.rb', line 138

def add(severity, message = nil, progname = nil, &block)	
if severity >= @err_level
	block_given? ? @err_logger.add(severity,message,progname,&block) : @err_logger.add(severity,message,progname)
else
	block_given? ? orig_add(severity,message,progname,&block) : orig_add(severity,message,progname)
end
end

#closeObject

Close the logging device.



150
151
152
153
154
155
156
# File 'lib/buzzcore/logging.rb', line 150

def close
begin
	@logdev.close if @logdev
ensure
	@err_logger.close
end
end

#orig_addObject



137
# File 'lib/buzzcore/logging.rb', line 137

alias_method :orig_add, :add