class DDMetrics::Metric
Public Class Methods
new()
click to toggle source
# File lib/ddmetrics/metric.rb, line 7 def initialize @basic_metrics = {} end
Public Instance Methods
basic_metric_for(label, basic_class)
click to toggle source
@api private
# File lib/ddmetrics/metric.rb, line 26 def basic_metric_for(label, basic_class) @basic_metrics.fetch(label) { @basic_metrics[label] = basic_class.new } end
each() { |label, get(label)| ... }
click to toggle source
# File lib/ddmetrics/metric.rb, line 19 def each @basic_metrics.each_key do |label| yield(label, get(label)) end end
get(label)
click to toggle source
# File lib/ddmetrics/metric.rb, line 11 def get(label) basic_metric_for(label, BasicCounter) end
labels()
click to toggle source
# File lib/ddmetrics/metric.rb, line 15 def labels @basic_metrics.keys end
validate_label(label)
click to toggle source
@api private
# File lib/ddmetrics/metric.rb, line 31 def validate_label(label) return if label.is_a?(Hash) raise ArgumentError, 'label argument must be a hash' end