Sha256: 433225bdc738b608bd9155843acf5c556459fd53355d0d9e728ba00a5c4a9f7b
Contents?: true
Size: 1.18 KB
Versions: 3
Compression:
Stored size: 1.18 KB
Contents
require 'logger' class App_logger LOG_FILE_PATH = File.expand_path('../../log/app.log', __FILE__) private_class_method :new def initialize ensure_log_directory self.logger = Logger.new(LOG_FILE_PATH) self.logger.formatter = proc do |severity, datetime, progname, msg| "[#{datetime}] #{severity}: #{msg}\n" end setup_log_level end def self.instance @instance ||= new end def log(severity, message) self.logger.send(severity, message) end def info(message) log(:info, message) end def debug(message) log(:debug, message) end def error(message) log(:error, message) end def warn(message) log(:warn, message) end def fatal(message) log(:fatal, message) end private attr_accessor :logger def ensure_log_directory log_directory = File.dirname(LOG_FILE_PATH) Dir.mkdir(log_directory) unless Dir.exist?(log_directory) end def setup_log_level log_mode = ENV['LOG_MODE'] || 'hybrid' case log_mode.downcase when 'all' self.logger.level = Logger::DEBUG when 'errors' self.logger.level = Logger::ERROR when 'hybrid' self.logger.level = Logger::INFO end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
student_mvp-0.1.2 | lib/logger/logger.rb |
student_mvp-0.1.1 | lib/logger/logger.rb |
student_mvp-0.1.0 | lib/logger/logger.rb |