code: func (it *Transport) RoundTrip(req *http.Request) (*http.Response, error) {
  	statusCode := BogusStatusCode
  
  	// Remember the current time.
  	now := time.Now()
  
  	// Make the request using the next RoundTripper.
  	resp, err := it.next.RoundTrip(req)
  	if resp != nil {
  		statusCode = resp.StatusCode
  	}
  
  	// Observe the time it took to make the request.
  	RequestDurationSeconds.WithLabelValues(
  		req.URL.Scheme,
  		req.URL.Host,
  		it.cbs.PathProcessor(req.URL.Path),
  		it.cbs.QueryProcessor(req.URL.RawQuery),
  		req.Method,
  		it.cbs.CodeProcessor(statusCode),
  	).Observe(time.Since(now).Seconds())
  
  	// return the response and error reported from the next RoundTripper.
  	return resp, err
  }
docs: // RoundTrip implements http.RoundTripper. It forwards the request to the
  // next RoundTripper and measures the time it took in Prometheus summary.