module Ethon::Loggable
Contains logging behaviour.
Public Instance Methods
logger()
click to toggle source
Get the logger.
@note Will try to grab Rails' logger first before creating a new logger
with stdout.
@example Get the logger.
Loggable.logger
@return [ Logger ] The logger.
# File lib/ethon/loggable.rb, line 15 def logger return @logger if defined?(@logger) @logger = rails_logger || default_logger end
logger=(logger)
click to toggle source
Set the logger.
@example Set the logger.
Loggable.logger = Logger.new($stdout)
@param [ Logger ] logger The logger to set.
@return [ Logger ] The new logger.
# File lib/ethon/loggable.rb, line 28 def logger=(logger) @logger = logger end
Private Instance Methods
default_logger()
click to toggle source
Gets the default Ethon logger - stdout.
@example Get the default logger.
Loggable.default_logger
@return [ Logger ] The default logger.
# File lib/ethon/loggable.rb, line 40 def default_logger logger = Logger.new($stdout) logger.level = Logger::INFO logger end
rails_logger()
click to toggle source
Get the Rails logger if it's defined.
@example Get Rails' logger.
Loggable.rails_logger
@return [ Logger ] The Rails logger.
# File lib/ethon/loggable.rb, line 52 def rails_logger defined?(::Rails) && ::Rails.respond_to?(:logger) && ::Rails.logger end