Merb::Logger = Extlib::Logger
Ruby (standard) logger levels:
:fatal | An unhandleable error that results in a program crash |
:error | A handleable error condition |
:warn | A warning |
:info | generic (useful) information about system operation |
:debug | low-level information for developers |
Appends a message to the log. The methods yield to an optional block and the output of this block will be appended to the message.
string | The message to be logged. Defaults to nil. |
String | The resulting message added to the log file. |
# File lib/merb-core/logger.rb, line 143 143: def <<(string = nil) 144: message = "" 145: message << delimiter 146: message << string if string 147: message << "\n" unless message[1] == \n\ 148: @buffer << message 149: flush if @auto_flush 150: 151: message 152: end
Close and remove the current log object.
# File lib/merb-core/logger.rb, line 129 129: def close 130: flush 131: @log.close if @log.respond_to?(:close) && !@log.tty? 132: @log = nil 133: end
Flush the entire buffer to the log object.
# File lib/merb-core/logger.rb, line 121 121: def flush 122: return unless @buffer.size > 0 123: @mutex.synchronize do 124: @log.write(@buffer.slice!(0..1).join('')) 125: end 126: end
Replaces an existing logger with a new one.
stream | Either an IO object or a name of a logfile. |
log_level<~to_sym> | The log level from, e.g. :fatal or :info. Defaults to :error in the production environment and :debug otherwise. |
delimiter | Delimiter to use between message sections. Defaults to “ ~ “. |
auto_flush | Whether the log should automatically flush after new messages are added. Defaults to false. |
# File lib/merb-core/logger.rb, line 100 100: def set_log(stream = Merb::Config[:log_stream], 101: log_level = Merb::Config[:log_level], 102: delimiter = Merb::Config[:log_delimiter], 103: auto_flush = Merb::Config[:log_auto_flush]) 104: 105: @buffer = [] 106: @delimiter = delimiter 107: @auto_flush = auto_flush 108: 109: if Levels[log_level] 110: @level = Levels[log_level] 111: else 112: @level = log_level 113: end 114: 115: @log = stream 116: @log.sync = true 117: @mutex = (@@mutex[@log] ||= Mutex.new) 118: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.