diff --git a/lib/instrument/dummy.go b/lib/instrument/dummy.go index fd71c47..a685bbe 100644 --- a/lib/instrument/dummy.go +++ b/lib/instrument/dummy.go @@ -10,5 +10,5 @@ func Init() Instrument { return &dummyInst{} } -func (i dummyInst) Visit(section string, id string, search string, fmt string) {} -func (i dummyInst) Duration(section string, duration time.Duration) {} +func (i dummyInst) Visit(section string, id string, search string, fmt string) {} +func (i dummyInst) Duration(section string, search string, duration time.Duration) {} diff --git a/lib/instrument/instrument.go b/lib/instrument/instrument.go index a1f5e38..c7b9181 100644 --- a/lib/instrument/instrument.go +++ b/lib/instrument/instrument.go @@ -4,5 +4,5 @@ import "time" type Instrument interface { Visit(section string, id string, search string, fmt string) - Duration(section string, duration time.Duration) + Duration(section string, search string, duration time.Duration) } diff --git a/lib/instrument/prometheus.go b/lib/instrument/prometheus.go index bc00fae..aafa7d2 100644 --- a/lib/instrument/prometheus.go +++ b/lib/instrument/prometheus.go @@ -37,7 +37,7 @@ func Init() Instrument { Name: "trantor_request_duration_seconds", Help: "Duration of the request in seconds.", }, - []string{"section"}, + []string{"section", "search"}, ) prometheus.MustRegister(visits) @@ -61,6 +61,6 @@ func (in promInst) Visit(section string, id string, search string, fmt string) { in.visits.WithLabelValues(section, id, search, fmt).Inc() } -func (in promInst) Duration(section string, duration time.Duration) { - in.reqDur.WithLabelValues(section).Observe(duration.Seconds()) +func (in promInst) Duration(section string, search string, duration time.Duration) { + in.reqDur.WithLabelValues(section, search).Observe(duration.Seconds()) } diff --git a/lib/stats.go b/lib/stats.go index f4ccd96..4efe4c3 100644 --- a/lib/stats.go +++ b/lib/stats.go @@ -120,7 +120,7 @@ func (sg StatsGatherer) worker() { } sg.instrument.Visit(section, id, search, fmt) - sg.instrument.Duration(section, req.duration*time.Microsecond) + sg.instrument.Duration(section, search, req.duration) switch section { case "download": err = sg.db.IncDownloads(id)