class PromMultiProc::ProxyCollector
Public Class Methods
new(proxy, collector)
click to toggle source
# File lib/prom_multi_proc/proxy.rb, line 30 def initialize(proxy, collector) @proxy = proxy @collector = collector add_proxy_methods end
Private Instance Methods
add_proxy_methods()
click to toggle source
# File lib/prom_multi_proc/proxy.rb, line 39 def add_proxy_methods @collector.metric_methods.each do |meth| define_singleton_method(meth) do |*args| case args.length when 0 value = 1.0 labels = {} when 1 if args[0].is_a?(Hash) value = 1.0 labels = args[0] else value = args[0] labels = {} end when 2 value = args[0] labels = args[1] else raise PromMultiProcError.new("Invalid number of arguments") end @proxy.add_multi(@collector, meth, value, labels) end end end