Prometheus metrics support added.

This commit is contained in:
Musab Gültekin
2019-06-21 20:05:28 +03:00
parent 141bab0d05
commit 88c4b1dd35
6 changed files with 114 additions and 16 deletions

View File

@@ -75,9 +75,19 @@ func logMiddleware(g *Geziyor, r *Request) {
log.Println("Fetching: ", r.URL.String())
}
// metricsRequestMiddleware sets stats
func metricsRequestMiddleware(g *Geziyor, r *Request) {
g.metrics.requestCount.With("method", r.Method).Add(1)
}
// parseHTMLMiddleware parses response if response is HTML
func parseHTMLMiddleware(g *Geziyor, r *Response) {
if !g.Opt.ParseHTMLDisabled && r.isHTML() {
r.DocHTML, _ = goquery.NewDocumentFromReader(bytes.NewReader(r.Body))
}
}
// metricsResponseMiddleware sets stats
func metricsResponseMiddleware(g *Geziyor, r *Response) {
g.metrics.responseCount.With("method", r.Request.Method).Add(1)
}