Module: Multimeter

Defined in:
lib/multimeter.rb,
lib/multimeter/version.rb

Defined Under Namespace

Modules: Http Classes: Counter, Gauge, Histogram, Meter, MetricRegistry, Snapshot, Timer

Constant Summary collapse

VERSION =
'2.0.0'.freeze

Class Method Summary collapse

Class Method Details

.create_registryObject



94
95
96
# File 'lib/multimeter.rb', line 94

def self.create_registry
  MetricRegistry.new
end

.http(registry, rack_handler, options = {}) ⇒ Object



102
103
104
105
106
107
108
109
110
# File 'lib/multimeter.rb', line 102

def self.http(registry, rack_handler, options={})
  server_thread = Java::JavaLang::Thread.new do
    rack_handler.run(Http.create_app(registry), options)
  end
  server_thread.daemon = true
  server_thread.name = 'multimeter-http-server'
  server_thread.start
  server_thread
end

.jmx(registry, options = {}) ⇒ Object



98
99
100
# File 'lib/multimeter.rb', line 98

def self.jmx(registry, options = {})
  Metrics::JmxReporter.forRegistry(registry.to_java).inDomain(options[:domain] || 'multimeter').build.tap(&:start)
end