...

Source file src/golang.conradwood.net/go-easyops/prometheus/countervec.go

Documentation: golang.conradwood.net/go-easyops/prometheus

     1  package prometheus
     2  
     3  import (
     4  	pm "github.com/prometheus/client_golang/prometheus"
     5  )
     6  
     7  type CounterVec struct {
     8  	collector
     9  	opts       CounterOpts
    10  	labelnames []string
    11  	gv         *pm.CounterVec
    12  }
    13  
    14  func (h *CounterVec) init() *CounterVec {
    15  	h.gv = pm.NewCounterVec(
    16  		pm.CounterOpts{
    17  			Name: h.opts.Name,
    18  			Help: h.opts.Help,
    19  		}, h.labelnames)
    20  	h.setParent(h)
    21  	return h
    22  }
    23  func (g *CounterVec) PMCollector() pm.Collector {
    24  	return g.gv
    25  }
    26  func (g *CounterVec) With(l Labels) pm.Counter {
    27  	promreg.used(g.opts.Name, l)
    28  	return g.gv.With(pm.Labels(l))
    29  }
    30  func (g *CounterVec) Inc() {
    31  	g.gv.With(pm.Labels{}).Inc()
    32  }
    33  

View as plain text