Sha256: 6dce15c5dea7bdc53769fe822c885db9217ebd66e61d4649e707ba60f525ee87
Contents?: true
Size: 1.26 KB
Versions: 67
Compression:
Stored size: 1.26 KB
Contents
# encoding: utf-8 module Ethon # Contains logging behaviour. module Loggable # 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. def logger return @logger if defined?(@logger) @logger = rails_logger || default_logger end # Set the logger. # # @example Set the logger. # Loggable.logger = Logger.new($stdout) # # @param [ Logger ] logger The logger to set. # # @return [ Logger ] The new logger. def logger=(logger) @logger = logger end private # Gets the default Ethon logger - stdout. # # @example Get the default logger. # Loggable.default_logger # # @return [ Logger ] The default logger. def default_logger logger = Logger.new($stdout) logger.level = Logger::INFO logger end # Get the Rails logger if it's defined. # # @example Get Rails' logger. # Loggable.rails_logger # # @return [ Logger ] The Rails logger. def rails_logger defined?(::Rails) && ::Rails.respond_to?(:logger) && ::Rails.logger end end extend Loggable end
Version data entries
67 entries across 66 versions & 8 rubygems