class Leafy::Metrics::Registry

Attributes

metrics[R]

state ofthe registry

Public Class Methods

new() click to toggle source
# File lib/leafy/metrics/registry.rb, line 39
def initialize
  @metrics = com.codahale.metrics.MetricRegistry.new
end

Public Instance Methods

register_counter( name ) click to toggle source

register a counter under a given name

@param [String] name @return [Java::ComCodahaleMetrics::Counter] counter object which has an 'inc' and 'dec' method

# File lib/leafy/metrics/registry.rb, line 71
def register_counter( name )
  @metrics.counter( name )
end
register_gauge( name, gauge = nil, &block ) click to toggle source

register a gauge under a given name

@param [String] name @param [String] instead of block any gauge object which responds to 'call' @yieldreturn [Object] can be any object like Fixnum, String, Float @return [MetricsRegistry::Gauge] gauge object which has a 'value' method to retrieve the current value

# File lib/leafy/metrics/registry.rb, line 49
def register_gauge( name, gauge = nil, &block )
  if gauge and not block_given? and gauge.respond_to? :call
    @metrics.register( name, Gauge.new( gauge ) )      
  elsif gauge.nil? and block_given?
    @metrics.register( name, Gauge.new( block ) )
  else
    raise 'needs either a block and object with call method'
  end
end
register_histogram( name ) click to toggle source

register a histogram under a given name

@param [String] name @return [Java::ComCodahaleMetrics::Counter] histogram object which has an 'update' method

# File lib/leafy/metrics/registry.rb, line 87
def register_histogram( name )
  @metrics.histogram( name )
end
register_meter( name ) click to toggle source

register a meter under a given name

@param [String] name @return [Java::ComCodahaleMetrics::Meter] meter object which has a 'mark' method to mark the meter

# File lib/leafy/metrics/registry.rb, line 63
def register_meter( name )
  @metrics.meter( name )
end
register_timer( name ) click to toggle source

register a timer under a given name

@param [String] name @return [Java::ComCodahaleMetrics::Timer] timer object which has an 'context' method which starts the timer. the context has a 'stop' method to stop it.

# File lib/leafy/metrics/registry.rb, line 79
def register_timer( name )
  Timer.new( @metrics.timer( name ) )
end
remove( name ) click to toggle source
# File lib/leafy/metrics/registry.rb, line 91
def remove( name )
  @metrics.remove( name )
end
reporter_builder( clazz, &block ) click to toggle source
# File lib/leafy/metrics/registry.rb, line 95
def reporter_builder( clazz, &block )
  r = clazz.for_registry( @metrics )
  r.instance_eval( &block ) if block
  r
end