class Itamae::Logger::Formatter
Attributes
colored[RW]
Public Instance Methods
call(severity, datetime, progname, msg)
click to toggle source
# File lib/itamae/logger.rb, line 75 def call(severity, datetime, progname, msg) log = "%s : %s\n" % ["%5s" % severity, msg2str(msg)] if colored colorize(log, severity) else log end end
color(code) { || ... }
click to toggle source
# File lib/itamae/logger.rb, line 84 def color(code) prev_color = @color @color = code yield ensure @color = prev_color end
Private Instance Methods
colorize(str, severity)
click to toggle source
# File lib/itamae/logger.rb, line 106 def colorize(str, severity) if @color color_code = @color else color_code = case severity when "INFO" :clear when "WARN" :magenta when "ERROR" :red else :clear end end ANSI.public_send(color_code) { str } end
msg2str(msg)
click to toggle source
# File lib/itamae/logger.rb, line 94 def msg2str(msg) case msg when ::String msg when ::Exception "#{ msg.message } (#{ msg.class })\n" << (msg.backtrace || []).join("\n") else msg.inspect end end