class PromMultiProc::Proxy

Attributes

multis[R]

Public Class Methods

new(base) click to toggle source
# File lib/prom_multi_proc/proxy.rb, line 5
def initialize(base)
  @base = base
  @proxies = {}
  @multis = []

  add_proxy_methods
end

Public Instance Methods

add_multi(collector, method, value, labels) click to toggle source
# File lib/prom_multi_proc/proxy.rb, line 13
def add_multi(collector, method, value, labels)
  @multis << [collector, method, value, labels]
end

Private Instance Methods

add_proxy_methods() click to toggle source
# File lib/prom_multi_proc/proxy.rb, line 19
def add_proxy_methods
  @base.metrics.each do |name|
    @proxies[name] = ProxyCollector.new(self, @base.metric(name))
    define_singleton_method(name) do
      @proxies[name]
    end
  end
end