class RTALogger::LogRepositoryFile
show log items on console out put
Public Class Methods
new(file_path = 'log.txt', period = 'daily', shift_size = 1_048_576)
click to toggle source
Calls superclass method
RTALogger::LogRepository::new
# File lib/log_repository_file.rb, line 8 def initialize(file_path = 'log.txt', period = 'daily', shift_size = 1_048_576) super() @file_path = file_path @period = period @shift_size = shift_size @file_logger = create_ruby_logger(@file_path, @period, @shift_size) end
Public Instance Methods
apply_run_time_config(config_json)
click to toggle source
register :file
Calls superclass method
RTALogger::LogRepository#apply_run_time_config
# File lib/log_repository_file.rb, line 37 def apply_run_time_config(config_json) super config_json @formatter.colorize = false end
load_config(config_json)
click to toggle source
Calls superclass method
RTALogger::LogRepository#load_config
# File lib/log_repository_file.rb, line 16 def load_config(config_json) super file_path = config_json['file_path'].to_s period = config_json['roll_period'].to_s shift_size = config_json['roll_size'].nil? ? 1_048_576 : config_json['roll_size'].to_i @file_logger = create_ruby_logger(file_path, period, shift_size) end
to_builder()
click to toggle source
Calls superclass method
RTALogger::LogRepository#to_builder
# File lib/log_repository_file.rb, line 25 def to_builder json = super json.enable enable json.file_path @file_path json.period @period json.shift_size @shift_size json end
Protected Instance Methods
create_ruby_logger(file_path, period, shift_size)
click to toggle source
# File lib/log_repository_file.rb, line 45 def create_ruby_logger(file_path, period, shift_size) ruby_logger = Logger.new(file_path, period, shift_size) ruby_logger.level = Logger::Severity::DEBUG ruby_logger.formatter = proc do |_severity, _datetime, _progname, msg| "#{msg}\n" end ruby_logger end
flush_and_clear()
click to toggle source
Calls superclass method
RTALogger::LogRepository#flush_and_clear
# File lib/log_repository_file.rb, line 54 def flush_and_clear @semaphore.synchronize do @log_records.each { |log_record| @file_logger.debug(@formatter.format(log_record)) } end super end