class NI_LOGGER
Constants
- SEVERITY_TYPES
LOG_KEYS = [:context, :action_id, :message]
Public Class Methods
logs_folder()
click to toggle source
# File lib/ni-logger.rb, line 34 def self.logs_folder # TODO: set the path from config @logs_folder ||= "#{Rails.root}/log" end
options()
click to toggle source
# File lib/ni-logger.rb, line 30 def self.options return @options end
setup(options)
click to toggle source
# File lib/ni-logger.rb, line 26 def self.setup(options) @options = (@options || {}).merge(options) end
Private Class Methods
log(params)
click to toggle source
# File lib/ni-logger.rb, line 49 def self.log(params) params_with_defaults = options.merge(params.reject{|k,v| v.nil?}) puts 'params_with_defaults:' puts params_with_defaults current_context = params_with_defaults[:context] current_severity = params_with_defaults[:severity] logger_instance = logger_of_context(current_context) logger_instance.send current_severity.to_sym, params_with_defaults.except(:context, :severity) Rails.logger.send current_severity.to_sym, params_with_defaults.except(:severity) end
log_file_path(current_context)
click to toggle source
# File lib/ni-logger.rb, line 42 def self.log_file_path(current_context) puts 'current_context:' puts current_context file_name = current_context.to_s.downcase.gsub(/ /, '_').gsub(/[^0-9a-z_]/, '') return "#{logs_folder}/#{file_name}.log" end
logger_of_context(current_context)
click to toggle source
# File lib/ni-logger.rb, line 64 def self.logger_of_context(current_context) @context_loggers[current_context] ||= Logger.new(log_file_path(current_context)) end
Public Instance Methods
nil,()
click to toggle source
action_id: nil, server_name: nil, params: nil,
# File lib/ni-logger.rb, line 10