Browse Source

reverseproxy: Emit debug log before checking error (#3425)

This way the upstream request will always be available even if it failed
master
Matthew Holt 5 years ago
parent
commit
812278acd8
  1. 7
      modules/caddyhttp/reverseproxy/reverseproxy.go

7
modules/caddyhttp/reverseproxy/reverseproxy.go

@ -465,10 +465,6 @@ func (h *Handler) reverseProxy(rw http.ResponseWriter, req *http.Request, di Dia
start := time.Now()
res, err := h.Transport.RoundTrip(req)
duration := time.Since(start)
if err != nil {
return err
}
h.logger.Debug("upstream roundtrip",
zap.String("upstream", di.Upstream.String()),
zap.Object("request", caddyhttp.LoggableHTTPRequest{Request: req}),
@ -476,6 +472,9 @@ func (h *Handler) reverseProxy(rw http.ResponseWriter, req *http.Request, di Dia
zap.Duration("duration", duration),
zap.Int("status", res.StatusCode),
)
if err != nil {
return err
}
// update circuit breaker on current conditions
if di.Upstream.cb != nil {

Loading…
Cancel
Save