Sha256: f23db720bd876df9d554714cde3007a7c986bca4c36fb5729030c5cb3c1af3e7
Contents?: true
Size: 1.14 KB
Versions: 4
Compression:
Stored size: 1.14 KB
Contents
module Enviro module Logger class DirectoryNotFound < StandardError; end def self.included(base) base.send(:extend, ClassMethods) base.instance_eval do class << self extend Forwardable def_delegators :logger, :debug, :error, :fatal, :info, :warn end end end module ClassMethods def logger_dir_env(value=nil) @_logger_dir_env ||= 'ENVY_LOG_DIR' @_logger_dir_env = value.to_s.upcase unless value.nil? @_logger_dir_env end def logger_dir @_logger_dir ||= ENV[self.logger_dir_env] end def logger @_logger ||= _setup_logger_for_environment end private def _setup_logger_for_environment return ::Rails.logger if defined?(::Rails) unless self.logger_dir.nil? raise DirectoryNotFound unless File::directory?(self.logger_dir) @logger_path = File.join(self.logger_dir, "#{self.environment}.log") else @logger_path = STDOUT end require 'logger' return ::Logger.new(@logger_path) end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
enviro-0.0.4 | lib/enviro/logger.rb |
enviro-0.0.3 | lib/enviro/logger.rb |
enviro-0.0.2 | lib/enviro/logger.rb |
enviro-0.0.1 | lib/enviro/logger.rb |