func (s *Sink) EmitEvent(job string, event string, kvs map[string]string) { var counter *prometheus.CounterVec if c, ok := s.Config.CounterVecs[job]; ok { counter = c } else { labels := labelsFromMap(kvs) counter = prometheus.NewCounterVec(prometheus.CounterOpts{ Namespace: s.Config.Job, Subsystem: "indexer", Name: job, Help: "Automaticaly created event", }, labels) s.Config.CounterVecs[job] = counter prometheus.Register(counter) } kvs["event"] = event if m, err := counter.GetMetricWith(kvs); err == nil { m.Inc() } }