Class: SimpleBackup::Utils::Logger
- Inherits:
-
Object
- Object
- SimpleBackup::Utils::Logger
- Includes:
- Singleton
- Defined in:
- lib/simple_backup/utils/logger.rb
Constant Summary collapse
- TIME_FORMAT =
'%Y-%m-%dT%H:%M:%S'
Instance Method Summary collapse
- #buffer ⇒ Object
- #check_level(level) ⇒ Object
- #debug(message) ⇒ Object
- #error(message) ⇒ Object
- #info(message) ⇒ Object
-
#initialize ⇒ Logger
constructor
A new instance of Logger.
- #level=(level) ⇒ Object
- #log(level, message) ⇒ Object
- #scope_end(level = nil, message = nil) ⇒ Object
- #scope_start(level = nil, message = nil) ⇒ Object
- #warning(message) ⇒ Object
Constructor Details
#initialize ⇒ Logger
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# 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} } = "LOG STARTED #{Time.new.strftime('%Y-%m-%dT%H:%M:%S')}" = "SimpleBackup v#{SimpleBackup::Version::get}" = 0 = .length if .length > = .length if .length > = 80 if 80 > border = '=' * (( - .length) / 2).ceil.to_i @buffer << "#{border}==[ #{banner} ]==#{border}" border = '=' * (( - .length) / 2).ceil.to_i @buffer << "#{border}==[ #{banner2} ]==#{border}" puts @buffer[0].green puts @buffer[1].green end |
Instance Method Details
#buffer ⇒ Object
87 88 89 |
# File 'lib/simple_backup/utils/logger.rb', line 87 def buffer @buffer end |
#check_level(level) ⇒ Object
83 84 85 |
# 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) ⇒ Object
54 55 56 |
# File 'lib/simple_backup/utils/logger.rb', line 54 def debug() log(:debug, ) end |
#error(message) ⇒ Object
66 67 68 |
# File 'lib/simple_backup/utils/logger.rb', line 66 def error() log(:error, ) end |
#info(message) ⇒ Object
58 59 60 |
# File 'lib/simple_backup/utils/logger.rb', line 58 def info() log(:info, ) end |
#level=(level) ⇒ Object
39 40 41 42 |
# File 'lib/simple_backup/utils/logger.rb', line 39 def level=(level) check_level(level) @level = level end |
#log(level, message) ⇒ Object
70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/simple_backup/utils/logger.rb', line 70 def log(level, ) check_level(level) color = @levels[level][:color] should_write = @levels[level][:weight] <= @levels[@level][:weight] scope_prefix = '..' * @scope = "%s %7s: %s%s" % [Time.new.strftime(TIME_FORMAT), level.to_s.upcase, scope_prefix, ] @buffer << if should_write puts .colorize(color: color) if should_write end |
#scope_end(level = nil, message = nil) ⇒ Object
49 50 51 52 |
# File 'lib/simple_backup/utils/logger.rb', line 49 def scope_end(level = nil, = nil) log level, unless level.nil? and .nil? @scope -= 1 unless @scope == 0 end |
#scope_start(level = nil, message = nil) ⇒ Object
44 45 46 47 |
# File 'lib/simple_backup/utils/logger.rb', line 44 def scope_start(level = nil, = nil) log level, unless level.nil? and .nil? @scope += 1 end |
#warning(message) ⇒ Object
62 63 64 |
# File 'lib/simple_backup/utils/logger.rb', line 62 def warning() log(:warning, ) end |