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
39
40
41
|
# File 'lib/liquid/metrics.rb', line 39
def self.counter(name)
registry.counter(name)
end
|
.histogram(name) ⇒ Object
47
48
49
|
# File 'lib/liquid/metrics.rb', line 47
def self.histogram(name)
registry.histogram(name)
end
|
.meter(name) ⇒ Object
43
44
45
|
# File 'lib/liquid/metrics.rb', line 43
def self.meter(name)
registry.meter(name)
end
|
.register_reporter(reporter) ⇒ Object
30
31
32
33
|
# File 'lib/liquid/metrics.rb', line 30
def self.register_reporter(reporter)
reporter.start(@period, @unit)
@reporters << reporter
end
|
.registry ⇒ Object
35
36
37
|
# File 'lib/liquid/metrics.rb', line 35
def self.registry
@registry
end
|
.start(period = nil, unit = nil) ⇒ Object
15
16
17
18
19
20
|
# File 'lib/liquid/metrics.rb', line 15
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
22
23
24
25
26
27
28
|
# File 'lib/liquid/metrics.rb', line 22
def self.stop
@reporters.each do |reporter|
reporter.run if reporter.respond_to?(:run)
reporter.stop
end
@reporters.clear
end
|
.timer(name) ⇒ Object
51
52
53
|
# File 'lib/liquid/metrics.rb', line 51
def self.timer(name)
registry.timer(name)
end
|