...
1 package provider
2
3 import (
4 "github.com/go-kit/kit/metrics"
5 "github.com/go-kit/kit/metrics/dogstatsd"
6 )
7
8 type dogstatsdProvider struct {
9 d *dogstatsd.Dogstatsd
10 stop func()
11 }
12
13
14
15
16 func NewDogstatsdProvider(d *dogstatsd.Dogstatsd, stop func()) Provider {
17 return &dogstatsdProvider{
18 d: d,
19 stop: stop,
20 }
21 }
22
23
24
25 func (p *dogstatsdProvider) NewCounter(name string) metrics.Counter {
26 return p.d.NewCounter(name, 1.0)
27 }
28
29
30 func (p *dogstatsdProvider) NewGauge(name string) metrics.Gauge {
31 return p.d.NewGauge(name)
32 }
33
34
35
36 func (p *dogstatsdProvider) NewHistogram(name string, _ int) metrics.Histogram {
37 return p.d.NewHistogram(name, 1.0)
38 }
39
40
41 func (p *dogstatsdProvider) Stop() {
42 p.stop()
43 }
44
View as plain text