class Meter::Configuration

Attributes

backends[W]
environment[W]
hostname[W]
logger[W]
namespace[W]
options[R]

Public Class Methods

new(options = {}) click to toggle source
# File lib/meter/configuration.rb, line 9
def initialize(options = {})
  @options = options
end

Public Instance Methods

backends() click to toggle source
# File lib/meter/configuration.rb, line 41
def backends
  @backends ||= []
end
environment() click to toggle source
# File lib/meter/configuration.rb, line 23
def environment
  @environment ||= options[:environment] || default_environment
end
hostname() click to toggle source
# File lib/meter/configuration.rb, line 36
def hostname
  @hostname ||= options[:hostname] || default_hostname
end
log_dir() click to toggle source
# File lib/meter/configuration.rb, line 28
def log_dir
  @log_dir ||= (::Pathname.new(options[:log_dir]) if options[:log_dir]) || default_log_dir
end
log_dir=(new_dir) click to toggle source
# File lib/meter/configuration.rb, line 32
def log_dir=(new_dir)
  @log_dir = Pathname.new new_dir
end
logger() click to toggle source
# File lib/meter/configuration.rb, line 13
def logger
  @logger ||= options[:logger] || default_logger
end
namespace() click to toggle source
# File lib/meter/configuration.rb, line 18
def namespace
  @namespace ||= options[:namespace] || default_namespace
end

Private Instance Methods

default_environment() click to toggle source
# File lib/meter/configuration.rb, line 57
def default_environment
  return ::Rails.env if defined?(::Rails)
  return ENV['RACK_ENV'] if ENV['RACK_ENV'].to_s != ''
  return ENV['NODE_CHEF_ENVIRONMENT'] if ENV['NODE_CHEF_ENVIRONMENT'].to_s != ''
  'unknown'
end
default_hostname() click to toggle source
# File lib/meter/configuration.rb, line 71
def default_hostname
  return File.read('/etc/me').strip       if File.readable?('/etc/me')
  return File.read('/etc/hostname').strip if File.readable?('/etc/hostname')
  `hostname -f`.strip
end
default_log_dir() click to toggle source
# File lib/meter/configuration.rb, line 64
def default_log_dir
  return ::Rails.root.join('log') if defined?(::Rails)
  log_subdir = ::Pathname.pwd.join('log')
  return log_subdir if log_subdir.directory?
  Pathname.new '/dev/null'
end
default_logger() click to toggle source
# File lib/meter/configuration.rb, line 48
def default_logger
  return ::Rails.logger if defined?(::Rails)
  ::Logger.new STDOUT
end
default_namespace() click to toggle source
# File lib/meter/configuration.rb, line 53
def default_namespace
  :meter
end