module RailFeeds::Logging
A Module to provide a global logger
Public Class Methods
formatter()
click to toggle source
# File lib/rail_feeds/logging.rb, line 43 def self.formatter proc do |severity, datetime, progname, message| "#{datetime} #{"#{progname} " unless progname.nil?}#{severity}: #{message}\n" end end
included(base)
click to toggle source
# File lib/rail_feeds/logging.rb, line 6 def self.included(base) class << base # Provide a logger 'attribute' to a class which defaults to the class logger. def logger @logger || Logging.logger end # rubocop:disable Style/TrivialAccessors def logger=(logger) @logger = logger end # rubocop:enable Style/TrivialAccessors end end
logger()
click to toggle source
Global, memoized, lazy initialized instance of a logger
# File lib/rail_feeds/logging.rb, line 31 def self.logger @logger ||= Logger.new( STDOUT, formatter: formatter, level: Logger::DEBUG ) end
logger=(logger)
click to toggle source
# File lib/rail_feeds/logging.rb, line 39 def self.logger=(logger) @logger = logger end
Public Instance Methods
logger()
click to toggle source
Provide a logger attribute to an instance which defaults to the global logger.
# File lib/rail_feeds/logging.rb, line 22 def logger @logger || self.class.logger end
logger=(logger)
click to toggle source
# File lib/rail_feeds/logging.rb, line 26 def logger=(logger) @logger = logger end