func logBodyErrors()

in apmproxy/apmserver.go [225:247]


func logBodyErrors(logger *zap.SugaredLogger, resp *http.Response) {
	b, err := io.ReadAll(resp.Body)
	if err != nil {
		logger.Warnf("failed to post data to APM server: response status: %s: failed to read response body: %v", resp.Status, err)
		return
	}

	jErr := jsonResult{}
	if err := json.Unmarshal(b, &jErr); err != nil {
		logger.Warnf("failed to post data to APM server: response status: %s: failed to decode response body: %v: body: %s", resp.Status, err, string(b))
		return
	}

	if len(jErr.Errors) == 0 {
		logger.Warnf("failed to post data to APM server: response status: %s: response body: %s", resp.Status, string(b))
		return
	}

	logger.Warnf("failed to post data to APM server: response status: %s", resp.Status)
	for _, err := range jErr.Errors {
		logger.Warnf("document %s: message: %s", err.Document, err.Message)
	}
}