Покопался и нашел эту запись в группе Google RubyOnRails Talk.
Поэтому я немного изменил его и поместил в конец своей среды. Rb:
module ActiveSupport
class BufferedLogger
def add(severity, message = nil, progname = nil, &block)
return if @level > severity
message = (message || (block && block.call) || progname).to_s
level = {
0 => "DEBUG",
1 => "INFO",
2 => "WARN",
3 => "ERROR",
4 => "FATAL"
}[severity] || "U"
message = "[%s: %s #%d] %s" % [level,
Time.now.strftime("%m%d %H:%M:%S"),
$$,
message]
message = "#{message}\n" unless message[-1] == ?\n
buffer << message
auto_flush
message
end
end
end
В результате получается строка формата, подобная этой:
[DEBUG: 0121 10:35:26 # 57078] Визуализированные макеты / _header (0.00089)