Module: Monus
Defined Under Namespace
Modules: Backend, BuiltInMetric, Engine
Constant Summary
collapse
- ConfigurationError =
Class.new StandardError
- @@prepared =
false
- @@preparing =
false
- @@options =
{}
Class Method Summary
collapse
Class Method Details
.accept(field) ⇒ Object
60
61
62
|
# File 'lib/monus.rb', line 60
def self.accept(field)
set field, true
end
|
.backend ⇒ Object
40
41
42
43
|
# File 'lib/monus.rb', line 40
def self.backend
prepare unless @@prepared
@@backend
end
|
8
9
10
11
|
# File 'lib/monus.rb', line 8
def self.configure(options)
@@options = options
prepare
end
|
.engine ⇒ Object
35
36
37
38
|
# File 'lib/monus.rb', line 35
def self.engine
prepare unless @@prepared
@@engine
end
|
.logger ⇒ Object
45
46
47
48
49
50
|
# File 'lib/monus.rb', line 45
def self.logger
@@logger ||= options[:logger] || begin
require 'logger'
Logger.new STDOUT
end
end
|
.options ⇒ Object
13
14
15
|
# File 'lib/monus.rb', line 13
def self.options
@@options
end
|
.prepare ⇒ Object
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/monus.rb', line 17
def self.prepare
return true if @@prepared or @@preparing
@@preparing = true
@@engine = Monus::Engine[options[:engine] || :pure]
@@engine.prepare
@@backend = Monus::Backend[options[:backend] || :memory]
@@backend.prepare
options[:built_in_metrics]&.each do |metric|
Monus::BuiltInMetric[metric].activate
end
@@preparing = false
@@prepared = true
end
|
.refuse(field) ⇒ Object
64
65
66
|
# File 'lib/monus.rb', line 64
def self.refuse(field)
set field, false
end
|
.set(field, value, context = nil) ⇒ Object
56
57
58
|
# File 'lib/monus.rb', line 56
def self.set(field, value, context = nil)
write({field => value}, context)
end
|
.write(fields, context = nil) ⇒ Object
52
53
54
|
# File 'lib/monus.rb', line 52
def self.write(fields, context = nil)
backend.write(fields, context)
end
|