class SimpleBackup::Utils::Logger
Constants
- TIME_FORMAT
Public Class Methods
new()
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 11 def initialize @buffer = [] @scope = 0 @level = :info @levels = { debug: {weight: 3, color: :light_cyan}, info: {weight: 2, color: :green}, warning: {weight: 1, color: :light_yellow}, error: {weight: 0, color: :red} } banner = "LOG STARTED #{Time.new.strftime('%Y-%m-%dT%H:%M:%S')}" banner2 = "SimpleBackup v#{SimpleBackup::Version::get}" banner_length = 0 banner_length = banner.length if banner.length > banner_length banner_length = banner2.length if banner2.length > banner_length banner_length = 80 if 80 > banner_length border = '=' * ((banner_length - banner.length) / 2).ceil.to_i @buffer << "#{border}==[ #{banner} ]==#{border}" border = '=' * ((banner_length - banner2.length) / 2).ceil.to_i @buffer << "#{border}==[ #{banner2} ]==#{border}" puts @buffer[0].green puts @buffer[1].green end
Public Instance Methods
buffer()
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 87 def buffer @buffer end
check_level(level)
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 83 def check_level(level) raise "Unknown logging level #{level}" unless @levels.has_key?(level) end
debug(message)
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 54 def debug(message) log(:debug, message) end
error(message)
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 66 def error(message) log(:error, message) end
info(message)
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 58 def info(message) log(:info, message) end
level=(level)
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 39 def level=(level) check_level(level) @level = level end
log(level, message)
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 70 def log(level, message) check_level(level) color = @levels[level][:color] should_write = @levels[level][:weight] <= @levels[@level][:weight] scope_prefix = '..' * @scope message = "%s %7s: %s%s" % [Time.new.strftime(TIME_FORMAT), level.to_s.upcase, scope_prefix, message] @buffer << message if should_write puts message.colorize(color: color) if should_write end
scope_end(level = nil, message = nil)
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 49 def scope_end(level = nil, message = nil) log level, message unless level.nil? and message.nil? @scope -= 1 unless @scope == 0 end
scope_start(level = nil, message = nil)
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 44 def scope_start(level = nil, message = nil) log level, message unless level.nil? and message.nil? @scope += 1 end
warning(message)
click to toggle source
# File lib/simple_backup/utils/logger.rb, line 62 def warning(message) log(:warning, message) end