lib/franz/logger.rb in franz-1.2.7 vs lib/franz/logger.rb in franz-1.3.0
- old
+ new
@@ -31,35 +31,52 @@
# Create a new, colorful logger.
#
# @param debug [Boolean] enable DEBUG level logs
# @param out [File] output destination for logs
def initialize debug=false, trace=false, out=nil
+ colorize = out.nil?
out ||= $stdout
super out
- colorize
+ format colorize
@trace = true if trace
self.level = ::Logger::INFO
self.level = ::Logger::DEBUG if debug
end
private
- def colorize
+ def format colorize
+ short_format = "%s\n"
+ long_format = "%s [%s] %s -- %s\n"
+
self.formatter = proc do |severity, datetime, _, message|
- if level == 1
- message.to_s.colorize(
- color: SEVERITY_COLORS[severity.to_s][0],
- background: SEVERITY_COLORS[severity.to_s][1]
- ) + "\n"
- else
- "%s [%s] %s -- %s\n".colorize(
- color: SEVERITY_COLORS[severity.to_s][0],
- background: SEVERITY_COLORS[severity.to_s][1]
- ) % [
- severity,
- datetime.iso8601(6),
- File::basename(caller[4]),
- message
- ]
+ if colorize
+ if level == 1
+ short_format.colorize(
+ color: SEVERITY_COLORS[severity.to_s][0],
+ background: SEVERITY_COLORS[severity.to_s][1]
+ ) % message
+ else
+ long_format.colorize(
+ color: SEVERITY_COLORS[severity.to_s][0],
+ background: SEVERITY_COLORS[severity.to_s][1]
+ ) % [
+ severity,
+ datetime.iso8601(6),
+ File::basename(caller[4]),
+ message
+ ]
+ end
+ else # plain
+ if level == 1
+ short_format % message
+ else
+ long_format % [
+ severity,
+ datetime.iso8601(6),
+ File::basename(caller[4]),
+ message
+ ]
+ end
end
end
end
end
end
\ No newline at end of file