Module: Metrics
- Defined in:
- lib/liquid/metrics.rb,
lib/liquid/metrics/reporter.rb,
lib/liquid/metrics/logger_reporter.rb,
lib/liquid/metrics/tracker_reporter.rb
Defined Under Namespace
Classes: LoggerReporter, Reporter, TrackerReporter
Class Method Summary
collapse
Class Method Details
.counter(name) ⇒ Object
41
42
43
|
# File 'lib/liquid/metrics.rb', line 41
def self.counter(name)
registry.counter(name)
end
|
.histogram(name) ⇒ Object
49
50
51
|
# File 'lib/liquid/metrics.rb', line 49
def self.histogram(name)
registry.histogram(name)
end
|
.meter(name) ⇒ Object
45
46
47
|
# File 'lib/liquid/metrics.rb', line 45
def self.meter(name)
registry.meter(name)
end
|
.register_reporter(reporter) ⇒ Object
32
33
34
35
|
# File 'lib/liquid/metrics.rb', line 32
def self.register_reporter(reporter)
reporter.start(@period, @unit)
@reporters << reporter
end
|
.registry ⇒ Object
37
38
39
|
# File 'lib/liquid/metrics.rb', line 37
def self.registry
@registry
end
|
.start(period = nil, unit = nil) ⇒ Object
17
18
19
20
21
22
|
# File 'lib/liquid/metrics.rb', line 17
def self.start(period = nil, unit = nil)
@period ||= 60
@unit ||= TimeUnit::SECONDS
JmxReporter.forRegistry(@registry).build.start
Signal.register_shutdown_handler { stop }
end
|
.stop ⇒ Object
24
25
26
27
28
29
30
|
# File 'lib/liquid/metrics.rb', line 24
def self.stop
@reporters.each do |reporter|
reporter.run if reporter.respond_to?(:run)
reporter.stop
end
@reporters.clear
end
|
.timer(name) ⇒ Object
53
54
55
|
# File 'lib/liquid/metrics.rb', line 53
def self.timer(name)
registry.timer(name)
end
|