class Discorb::Logger
@!visibility private
Attributes
levels[R]
colorize_log[RW]
out[RW]
Public Class Methods
new(out, colorize_log, level)
click to toggle source
# File lib/discorb/log.rb, line 10 def initialize(out, colorize_log, level) @out = out @level = self.class.levels.index(level) @colorize_log = colorize_log end
Public Instance Methods
debug(message)
click to toggle source
# File lib/discorb/log.rb, line 25 def debug(message) return unless @level <= 0 write_output("DEBUG", "\e[90m", message) end
error(message)
click to toggle source
# File lib/discorb/log.rb, line 43 def error(message) return unless @level <= 3 write_output("ERROR", "\e[31m", message) end
fatal(message)
click to toggle source
# File lib/discorb/log.rb, line 49 def fatal(message) return unless @level <= 4 write_output("FATAL", "\e[91m", message) end
info(message)
click to toggle source
# File lib/discorb/log.rb, line 31 def info(message) return unless @level <= 1 write_output("INFO", "\e[94m", message) end
level()
click to toggle source
# File lib/discorb/log.rb, line 16 def level self.class.levels[@level] end
level=(level)
click to toggle source
# File lib/discorb/log.rb, line 20 def level=(level) @level = self.class.levels.index(level) raise ArgumentError, "Invalid log level: #{level}" unless @level end
warn(message)
click to toggle source
# File lib/discorb/log.rb, line 37 def warn(message) return unless @level <= 2 write_output("WARN", "\e[93m", message) end
Private Instance Methods
write_output(name, color, message)
click to toggle source
# File lib/discorb/log.rb, line 61 def write_output(name, color, message) return unless @out if @colorize_log @out.puts("\e[2;90m[#{Time.now.iso8601}] #{color}#{name}\e[m -- #{message}") else @out.puts("[#{Time.now.iso8601}] #{name} -- #{message}") end end