module Confiner::Logger
Public Class Methods
log_to()
click to toggle source
Where to output the log
# File lib/confiner/logger.rb, line 19 def self.log_to @out_file end
log_to=(file)
click to toggle source
# File lib/confiner/logger.rb, line 23 def self.log_to=(file) file = File.open(file.strip, 'a+t') if file.is_a?(String) @out_file = file end
Public Instance Methods
log(level, message, indentation = 1)
click to toggle source
Log something with a specific level
# File lib/confiner/logger.rb, line 6 def log(level, message, indentation = 1) color = "\e[0;35m" # default purple color = "\e[0;33m" if %i[warn warning].include?(level) # yellow color = "\e[0;31m" if %i[err error fatal].include?(level) # red raise ArgumentError, 'Level must be less than 12 characters' if level.size > 12 output = "(#{Time.now.strftime('%F %H:%M:%S')})\t#{color}#{level.to_s.upcase}#{' ' * (12 - level.size)}\e[m#{"\t" * indentation}#{message}" Logger.log_to.puts(output) end
run(action)
click to toggle source
Calls superclass method
# File lib/confiner/logger.rb, line 29 def run(action) log :plugin, "#{self.class}##{action}" super log :plugin, "#{self.class}##{action} Done" end