From 812278acd8a5c46b44fdf92ea5df4d6a51eff7be Mon Sep 17 00:00:00 2001 From: Matthew Holt Date: Mon, 18 May 2020 13:50:40 -0600 Subject: reverseproxy: Emit debug log before checking error (#3425) This way the upstream request will always be available even if it failed --- modules/caddyhttp/reverseproxy/reverseproxy.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'modules/caddyhttp') diff --git a/modules/caddyhttp/reverseproxy/reverseproxy.go b/modules/caddyhttp/reverseproxy/reverseproxy.go index 0b4bcdf..52d230c 100644 --- a/modules/caddyhttp/reverseproxy/reverseproxy.go +++ b/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 { -- cgit v1.2.3