Class: Opstat::Config
- Inherits:
-
Object
show all
- Includes:
- Logging, Singleton
- Defined in:
- lib/opstat-client/config.rb
Overview
A pretty sucky config class, ripe for refactoring/improving
Instance Method Summary
collapse
Methods included from Logging
#log_level, #oplogger, #preconfig_logger
Constructor Details
#initialize ⇒ Config
8
9
10
11
12
|
# File 'lib/opstat-client/config.rb', line 8
def initialize
@configured = false
@config = ''
end
|
Instance Method Details
#get(key) ⇒ Object
32
33
34
|
# File 'lib/opstat-client/config.rb', line 32
def get(key)
@config[key]
end
|
#get_mq_config ⇒ Object
36
37
38
|
# File 'lib/opstat-client/config.rb', line 36
def get_mq_config
get('mq')
end
|
#init_config(options) ⇒ Object
40
41
42
43
44
|
# File 'lib/opstat-client/config.rb', line 40
def init_config(options)
load_config(options[:config_file])
set_defaults
@config[:config_file] = options[:config_file]
end
|
#load_config(config_file) ⇒ Object
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/opstat-client/config.rb', line 14
def load_config(config_file)
unless File.exists?(config_file)
preconfig_logger.info 'No config file - create config file with default settings. Please set correct MQ settings'
default_config_path = File.dirname(File.expand_path(__FILE__)) + '/config/opstat.yml'
system_config_dir = '/etc/opstat'
system_config_path = system_config_dir + '/opstat.yml'
FileUtils.mkdir(system_config_dir) unless File.exists?(system_config_dir)
FileUtils.cp(default_config_path,system_config_path)
end
@config = YAML.load_file(config_file)
self.set_defaults
end
|
#set_defaults ⇒ Object
27
28
29
30
|
# File 'lib/opstat-client/config.rb', line 27
def set_defaults
@config['client']['send_data_interval'] ||= 30
@config['client']['log_level'] ||= "WARN"
end
|