lib/mj/logging.rb in build-tool-0.3.3 vs lib/mj/logging.rb in build-tool-0.4.0
- old
+ new
@@ -1,5 +1,8 @@
+require 'ansi/code'
+require 'logging'
+
module MJ; module Logging;
#
# Basic Layout for the logging framework.
#
@@ -8,26 +11,33 @@
# WARNING => 'warning: '
# ERROR => 'error: '
# REST => ''
class BasicLayout < ::Logging::Layout
+ include ANSI::Code
+
def format( event )
obj = format_obj(event.data)
return case event.level
- when ::Logging::level_num((:ERROR))
- sprintf("error: %s\n", obj)
+ when ::Logging::level_num(:ERROR)
+ red { sprintf("error: %s\n", obj) }
when ::Logging::level_num((:WARN))
- sprintf("warning: %s\n", obj)
+ yellow { sprintf("warning: %s\n", obj) }
else
- obj + "\n"
+ if obj.start_with?( '###')
+ blue { obj + "\n" }
+ else
+ obj + "\n"
+ end
end
end
end # class BasicLayout
+
# :TODO: Map the Logging Levels to Logger Levels instead of hardcoding them here.
class LoggerAdapter
def initialize( prefix )