Module: Dr::Logger
Constant Summary collapse
- @@message_types =
{ :info => "info", :warn => "warn", :err => "err", :debug => "debug" }
- @@verbosity =
:verbose
- @@logger_verbosity_levels =
{ :essential => 0, :important => 1, :informative => 2, :verbose => 3 }
- @@log_file =
nil
Class Method Summary collapse
- .log(msg_type, msg, verbosity = nil) ⇒ Object
- .set_logfile(file) ⇒ Object
- .set_verbosity(level) ⇒ Object
Instance Method Summary collapse
Class Method Details
.log(msg_type, msg, verbosity = nil) ⇒ Object
105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/dr/logger.rb', line 105 def self.log(msg_type, msg, verbosity=nil) out = "dr".style("log-head") << " " case msg_type when :info out << "info".style(@@message_types[:info]) verbosity = :informative unless verbosity when :warn out << "WARN".style(@@message_types[:warn]) verbosity = :informative unless verbosity when :err out << "ERR!".style(@@message_types[:err]) verbosity = :essential unless verbosity when :debug out << "dbg?".style(@@message_types[:debug]) verbosity = :verbose unless verbosity end if verbosity <= @@verbosity out << " " << msg.chomp puts out STDOUT.flush unless @@log_file.nil? @@log_file.puts strip_colours out @@log_file.flush end end end |
.set_logfile(file) ⇒ Object
94 95 96 |
# File 'lib/dr/logger.rb', line 94 def self.set_logfile(file) @@log_file = file end |
.set_verbosity(level) ⇒ Object
98 99 100 101 102 103 |
# File 'lib/dr/logger.rb', line 98 def self.set_verbosity(level) msg = "Message verbosity level not recognised (#{})." raise msg unless @@logger_verbosity_levels.has_key? level.to_sym @@verbosity = level.to_sym end |