class Logput::Adapters::Base

Base class from which all adapters inherit

Public Class Methods

handles?(_logger) click to toggle source

Placeholder for handles? method to be overridden when subclassed @param [Class] _logger @return [Boolean]

# File lib/logput/adapters/base.rb, line 23
def self.handles?(_logger)
  raise NotImplementedError
end
new(logger) click to toggle source

Initialize

# File lib/logput/adapters/base.rb, line 8
def initialize(logger)
  @logger = logger
end
register(adapter) click to toggle source

Registers a new adapter

@param [Symbol] adapter The name of the adapter

# File lib/logput/adapters/base.rb, line 15
def self.register(adapter)
  raise "Already Registered :#{adapter}" if Logput::Adapters.registered_adapters[adapter]
  Logput::Adapters.registered_adapters[adapter] = self
end

Public Instance Methods

path() click to toggle source

Placeholder for path method to be overridden when subclassed @return [String] path

# File lib/logput/adapters/base.rb, line 29
def path
  raise NotImplementedError
end
path_override() click to toggle source

Enable overriding of the path with an environment variable @return [String] path

# File lib/logput/adapters/base.rb, line 35
def path_override
  return unless directory && filename

  "#{directory}/#{filename}.log"
end

Private Instance Methods

directory() click to toggle source
# File lib/logput/adapters/base.rb, line 47
def directory
  @directory ||= ENV['LOG_LOCATION_DIR']
end
filename() click to toggle source
# File lib/logput/adapters/base.rb, line 43
def filename
  @filename ||= ENV['LOG_NAME'] || ENV['RAILS_ENV'] || ENV['RACK_ENV']
end