module Logging
Public Class Methods
make_logger(root_dir, log_file_name, log_dir_name: 'logs', log_level: Logger::INFO, rotation_count: 10, size_in_bytes: 10240000, reset: false)
click to toggle source
# File lib/jungle_path/logging.rb, line 4 def self.make_logger(root_dir, log_file_name, log_dir_name: 'logs', log_level: Logger::INFO, rotation_count: 10, size_in_bytes: 10240000, reset: false) # pass in root_dir = ::File.dirname(__FILE__) #puts "root_dir.class: #{root_dir.class}: #{root_dir}." #puts "log_file_name.class: #{log_file_name.class}: #{log_file_name}." #puts "log_dir_name.class: #{log_dir_name.class}: #{log_dir_name}." logs_dir = ::File.join(root_dir, log_dir_name) ::Dir.mkdir(logs_dir) unless File.exists? logs_dir ::Logger.class_eval do alias_method :write, :<< end filename = ::File.join(logs_dir, log_file_name) File.delete(filename) if reset and File.exists?(filename) logger = Logger.new(filename, rotation_count, size_in_bytes) logger.level = log_level logger end