Class: Sensu::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/sensu/base.rb

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ Base

Returns a new instance of Base.



24
25
26
# File 'lib/sensu/base.rb', line 24

def initialize(options={})
  @options = options
end

Instance Method Details

#extensionsObject



56
57
58
59
60
61
62
63
# File 'lib/sensu/base.rb', line 56

def extensions
  extensions = Extensions.new
  if @options[:extension_dir]
    extensions.require_directory(@options[:extension_dir])
  end
  extensions.load_all
  extensions
end

#loggerObject



28
29
30
31
32
33
34
35
36
37
38
# File 'lib/sensu/base.rb', line 28

def logger
  logger = Logger.get
  if @options[:log_level]
    logger.level = @options[:log_level]
  end
  if @options[:log_file]
    logger.reopen(@options[:log_file])
  end
  logger.setup_traps
  logger
end

#settingsObject



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/sensu/base.rb', line 40

def settings
  settings = Settings.new
  settings.load_env
  if @options[:config_file]
    settings.load_file(@options[:config_file])
  end
  if @options[:config_dirs]
    @options[:config_dirs].each do |config_dir|
      settings.load_directory(config_dir)
    end
  end
  settings.validate
  settings.set_env
  settings
end

#setup_processObject



65
66
67
68
69
70
71
72
73
# File 'lib/sensu/base.rb', line 65

def setup_process
  process = Process.new
  if @options[:daemonize]
    process.daemonize
  end
  if @options[:pid_file]
    process.write_pid(@options[:pid_file])
  end
end