aboutsummaryrefslogtreecommitdiff
path: root/lib/leap_cli/logger.rb
diff options
context:
space:
mode:
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]