|
|
@@ -186,6 +186,12 @@ func (ctx *Context) query(query string) (interface{}, prometheus.Warnings, error
|
|
|
|
|
|
return nil, warnings, fmt.Errorf("query error %d: '%s' fetching query '%s'", resp.StatusCode, err.Error(), query)
|
|
|
}
|
|
|
+ // Unsuccessful Status Code, log body and status
|
|
|
+ statusCode := resp.StatusCode
|
|
|
+ statusText := http.StatusText(statusCode)
|
|
|
+ if resp.StatusCode < 200 || resp.StatusCode >= 300 {
|
|
|
+ return nil, warnings, fmt.Errorf("%d (%s) URL: '%s' Headers: '%s', Body: '%s' Query: '%s'", statusCode, statusText, req.URL, util.HeaderString(resp.Header), body, query)
|
|
|
+ }
|
|
|
|
|
|
var toReturn interface{}
|
|
|
err = json.Unmarshal(body, &toReturn)
|