module EXEL::Logging
Constants
- DEFAULT_LEVEL
Public Class Methods
initialize_logger()
click to toggle source
# File lib/exel/logging.rb, line 20 def self.initialize_logger @logger = Logger.new(log_filename) @logger.level = log_level @logger.formatter = PrefixFormatter.new @logger end
log_filename()
click to toggle source
# File lib/exel/logging.rb, line 27 def self.log_filename EXEL.configuration.log_filename || '/dev/null' end
log_level()
click to toggle source
# File lib/exel/logging.rb, line 31 def self.log_level level = EXEL.configuration.log_level || DEFAULT_LEVEL Logger.const_get(level.to_s.upcase) end
logger()
click to toggle source
# File lib/exel/logging.rb, line 16 def self.logger @logger || initialize_logger end
logger=(logger)
click to toggle source
# File lib/exel/logging.rb, line 36 def self.logger=(logger) @logger = logger ? LoggerWrapper.new(logger) : Logger.new('/dev/null') end
prefix()
click to toggle source
# File lib/exel/logging.rb, line 49 def self.prefix Thread.current[:exel_log_prefix]&.last end
with_prefix(prefix) { || ... }
click to toggle source
Sets a prefix to be added to any messages sent to the EXEL
logger in the given block.
# File lib/exel/logging.rb, line 41 def self.with_prefix(prefix) Thread.current[:exel_log_prefix] ||= [] Thread.current[:exel_log_prefix].push(prefix) yield ensure Thread.current[:exel_log_prefix].pop end