MCPcopy
hub / github.com/prometheus/client_golang / parseWriteResponseStats

Function parseWriteResponseStats

exp/api/remote/remote_headers.go:200–227  ·  view source on GitHub ↗

parseWriteResponseStats returns WriteResponseStats parsed from the response headers. As per 2.0 spec, missing header means 0. However, abrupt HTTP errors, 1.0 Receivers or buggy 2.0 Receivers might result in no response headers specified and that might NOT necessarily mean nothing was written. To r

(r *http.Response)

Source from the content-addressed store, hash-verified

198//
199// Error is returned when any of the header fails to parse as int64.
200func parseWriteResponseStats(r *http.Response) (s WriteResponseStats, err error) {
201 var (
202 errs []error
203 h = r.Header
204 )
205 if v := h.Get(writtenSamplesHeader); v != "" { // Empty means zero.
206 s.confirmed = true
207 if s.Samples, err = strconv.Atoi(v); err != nil {
208 s.Samples = 0
209 errs = append(errs, err)
210 }
211 }
212 if v := h.Get(writtenHistogramsHeader); v != "" { // Empty means zero.
213 s.confirmed = true
214 if s.Histograms, err = strconv.Atoi(v); err != nil {
215 s.Histograms = 0
216 errs = append(errs, err)
217 }
218 }
219 if v := h.Get(writtenExemplarsHeader); v != "" { // Empty means zero.
220 s.confirmed = true
221 if s.Exemplars, err = strconv.Atoi(v); err != nil {
222 s.Exemplars = 0
223 errs = append(errs, err)
224 }
225 }
226 return s, errors.Join(errs...)
227}

Callers 1

attemptWriteMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected