From 8e9548f0500341fa4fc783eede1d9bf9a6489aa2 Mon Sep 17 00:00:00 2001 From: Aliaksandr Valialkin Date: Wed, 28 Dec 2022 14:42:07 -0800 Subject: [PATCH] lib/promscrape: log the actual response size in the error message when the response size exceeds -promscrape.maxScrapeSize This is a follow-up for 7ad9fff7e5f6e1b4c107b01be2d8c0436011376d --- lib/promscrape/client.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/promscrape/client.go b/lib/promscrape/client.go index e379a24b0..2be50051d 100644 --- a/lib/promscrape/client.go +++ b/lib/promscrape/client.go @@ -322,12 +322,12 @@ func (c *client) ReadData(dst []byte) ([]byte, error) { } else if !swapResponseBodies { dst = append(dst, resp.Body()...) } + fasthttp.ReleaseResponse(resp) if len(dst) > c.hc.MaxResponseBodySize { maxScrapeSizeExceeded.Inc() - return dst, fmt.Errorf("the response from %q exceeds -promscrape.maxScrapeSize=%d; "+ - "either reduce the response size for the target or increase -promscrape.maxScrapeSize", c.scrapeURL, maxScrapeSize.N) + return dst, fmt.Errorf("the response from %q exceeds -promscrape.maxScrapeSize=%d (the actual response size is %d bytes); "+ + "either reduce the response size for the target or increase -promscrape.maxScrapeSize", c.scrapeURL, len(dst), maxScrapeSize.N) } - fasthttp.ReleaseResponse(resp) if statusCode != fasthttp.StatusOK { metrics.GetOrCreateCounter(fmt.Sprintf(`vm_promscrape_scrapes_total{status_code="%d"}`, statusCode)).Inc() return dst, fmt.Errorf("unexpected status code returned when scraping %q: %d; expecting %d; response body: %q",