Commit a247736f authored by Fabian Reinartz's avatar Fabian Reinartz

Limit unbound label cardinality on request errors

This converts all request errors to the string `<error>` instead of passing the full error string. Error strings can have arbitrary values and thus have a cardinality that is not suitable for a metric use case.
parent 68a7c2c6
......@@ -693,9 +693,10 @@ func updateURLMetrics(req *Request, resp *http.Response, err error) {
url = req.baseURL.Host
}
// If we have an error (i.e. apiserver down) we report that as a metric label.
// Errors can be arbitrary strings. Unbound label cardinality is not suitable for a metric
// system so we just report them as `<error>`.
if err != nil {
metrics.RequestResult.Increment(err.Error(), req.verb, url)
metrics.RequestResult.Increment("<error>", req.verb, url)
} else {
//Metrics for failure codes
metrics.RequestResult.Increment(strconv.Itoa(resp.StatusCode), req.verb, url)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment