class Convoy::Logger
Public Class Methods
close()
click to toggle source
# File lib/convoy/logger.rb, line 6 def close error.close output.close end
error()
click to toggle source
# File lib/convoy/logger.rb, line 11 def error @error_logger ||= ::Logger.new($stderr).tap do |l| #l.formatter = advanced_error_formatter l.formatter = basic_error_formatter l.sev_threshold = ::Logger::WARN end end
output()
click to toggle source
# File lib/convoy/logger.rb, line 19 def output @output_logger ||= ::Logger.new($stdout).tap do |l| l.formatter = output_formatter l.sev_threshold = ::Logger::DEBUG l.instance_eval do def puts(message = nil, &block) if block_given? fatal(&block) else fatal(message || "") end end end end end
puts(message = nil, &block)
click to toggle source
# File lib/convoy/logger.rb, line 24 def puts(message = nil, &block) if block_given? fatal(&block) else fatal(message || "") end end
setup_error_logger(auto_options)
click to toggle source
# File lib/convoy/logger.rb, line 35 def setup_error_logger(auto_options) error.formatter = send(:"#{auto_options.error_formatter}_error_formatter") error.sev_threshold = ::Logger.const_get(auto_options.verbosity) end
Private Class Methods
advanced_error_formatter()
click to toggle source
ā#{severity} [#{datetime.strftime(ā%d/%b/%Y %H:%M:%Sā)}] "#{msg}"nā
# File lib/convoy/logger.rb, line 49 def advanced_error_formatter proc do |severity, datetime, progname, msg| sprintf("%-8s #{msg2str(msg, 10)}\n", severity) end end
basic_error_formatter()
click to toggle source
# File lib/convoy/logger.rb, line 42 def basic_error_formatter proc do |severity, datetime, progname, msg| "#{msg2str(msg)}\n" end end
msg2str(msg, backtrace_indent = 0)
click to toggle source
# File lib/convoy/logger.rb, line 61 def msg2str(msg, backtrace_indent = 0) case msg when ::String msg when ::Exception "#{msg.message} (#{ msg.class })\n" << (msg.backtrace || []).map { |line| sprintf("%#{backtrace_indent}s#{line}", "") }.join("\n") else msg.inspect end end
output_formatter()
click to toggle source
# File lib/convoy/logger.rb, line 55 def output_formatter proc do |severity, datetime, progname, msg| "#{msg}\n" end end