aboutsummaryrefslogtreecommitdiff
path: root/lib/leap_cli/logger.rb
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2013-02-26 16:24:20 -0800
committerelijah <elijah@riseup.net>2013-02-26 16:24:20 -0800
commita0a7fce59ee3370f7e0ff2418ad4debcc716026e (patch)
tree4dfc77d36d2cde894e178feb93f810a420a6032e /lib/leap_cli/logger.rb
parent4843452be72ec7dc73c603658f41e33c4c266eff (diff)
downloadleap_cli-a0a7fce59ee3370f7e0ff2418ad4debcc716026e.tar.gz
leap_cli-a0a7fce59ee3370f7e0ff2418ad4debcc716026e.tar.bz2
make logging work with ruby 1.8, add timestamps to log, remove colors from log.
Diffstat (limited to 'lib/leap_cli/logger.rb')
-rw-r--r--lib/leap_cli/logger.rb22
1 files changed, 13 insertions, 9 deletions
diff --git a/lib/leap_cli/logger.rb b/lib/leap_cli/logger.rb
index 3776be0..eca7aa6 100644
--- a/lib/leap_cli/logger.rb
+++ b/lib/leap_cli/logger.rb
@@ -57,15 +57,19 @@ module LeapCli
options[:level] ||= level
message.lines.each do |line|
- formatted_line, formatted_prefix, line_options = apply_formatting(line, line_prefix, options)
- if formatted_line && line_options[:level] <= self.level
- if formatted_line.chars.any?
- if formatted_prefix
- LeapCli::log "[#{formatted_prefix}] #{formatted_line}"
+ [:stdout, :log].each do |mode|
+ LeapCli::log_raw(mode) {
+ formatted_line, formatted_prefix, line_options = apply_formatting(mode, line, line_prefix, options)
+ if line_options[:level] <= self.level && formatted_line && formatted_line.chars.any?
+ if formatted_prefix
+ "[#{formatted_prefix}] #{formatted_line}"
+ else
+ formatted_line
+ end
else
- LeapCli::log formatted_line
+ nil
end
- end
+ }
end
end
end
@@ -127,7 +131,7 @@ module LeapCli
]
def self.prefix_formatters; @prefix_formatters; end
- def apply_formatting(message, line_prefix = nil, options={})
+ def apply_formatting(mode, message, line_prefix = nil, options={})
message = message.dup
options = options.dup
if !line_prefix.nil?
@@ -168,7 +172,7 @@ module LeapCli
if color == :hide
return nil
- elsif color == :none && style.nil?
+ elsif mode == :log || (color == :none && style.nil?)
return [message, line_prefix, options]
else
term_color = COLORS[color]