Sha256: 1add1f2be07cdf86468030e84874258af29cf8b393e17f5ced5477d3536ce95d
Contents?: true
Size: 1.04 KB
Versions: 12
Compression:
Stored size: 1.04 KB
Contents
java_import 'com.codahale.metrics.Histogram' java_import 'com.codahale.metrics.JmxReporter' java_import 'com.codahale.metrics.MetricRegistry' java_import 'java.util.concurrent.TimeUnit' class Histogram java_alias :update_long, :update, [Java::long] end module Metrics @registry = MetricRegistry.new @reporters = [] def self.start(period = nil, unit = nil) @period ||= 60 @unit ||= TimeUnit::SECONDS JmxReporter.forRegistry(@registry).build.start Signal.register_shutdown_handler { stop } end def self.stop @reporters.each do |reporter| reporter.run if reporter.respond_to?(:run) reporter.stop end @reporters.clear end def self.register_reporter(reporter) reporter.start(@period, @unit) @reporters << reporter end def self.registry @registry end def self.counter(name) registry.counter(name) end def self.meter(name) registry.meter(name) end def self.histogram(name) registry.histogram(name) end def self.timer(name) registry.timer(name) end end
Version data entries
12 entries across 12 versions & 1 rubygems