lib/ztk/logger.rb in ztk-1.13.0 vs lib/ztk/logger.rb in ztk-1.14.0
- old
+ new
@@ -22,10 +22,11 @@
# $logger.error { "This is a error message!" }
# $logger.fatal { "This is a fatal message!" }
#
# @author Zachary Patten <zachary AT jovelabs DOT com>
class Logger < ::Logger
+ attr_accessor :stdout_echo
# Log Levels
SEVERITIES = Severity.constants.inject([]) {|arr,c| arr[Severity.const_get(c)] = c; arr}
def initialize(*args)
@@ -93,10 +94,12 @@
called_by = parse_caller(caller[1+shift])
message = [message, progname].flatten.compact.join(": ")
message = "%19s.%06d|%05d|%5s|%s%s\n" % [Time.now.utc.strftime("%Y-%m-%d|%H:%M:%S"), Time.now.utc.usec, Process.pid, SEVERITIES[severity], called_by, message]
- @logdev.write(ZTK::ANSI.uncolor(message))
+ statement = ZTK::ANSI.uncolor(message)
+ stdout_echo.nil? or $stdout.write(statement)
+ @logdev.write(statement)
@logdev.respond_to?(:flush) and @logdev.flush
true
end