diff --git a/pkg/requests/builder.go b/pkg/requests/builder.go index 95d88101..cc56f4e5 100644 --- a/pkg/requests/builder.go +++ b/pkg/requests/builder.go @@ -95,13 +95,16 @@ func (r *builder) Do() Result { func (r *builder) do() Result { req, err := http.NewRequestWithContext(r.context, r.method, r.endpoint, r.body) if err != nil { + debugLogger.Infof("Error creating request: %v", err) r.result = &result{err: fmt.Errorf("error creating request: %v", err)} return r.result } req.Header = r.header + traceLogger.Infof("Executing request: Method: %v, Endpoint: %v, Header: %+v", r.method, r.endpoint, r.header) resp, err := http.DefaultClient.Do(req) if err != nil { + debugLogger.Infof("Error performing request: %v", err) r.result = &result{err: fmt.Errorf("error performing request: %v", err)} return r.result } @@ -109,10 +112,12 @@ func (r *builder) do() Result { defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) if err != nil { + debugLogger.Infof("Error reading response body: %v", err) r.result = &result{err: fmt.Errorf("error reading response body: %v", err)} return r.result } + traceLogger.Infof("Request result: Status: %s (%d), Body: %s", resp.Status, resp.StatusCode, string(body)) r.result = &result{response: resp, body: body} return r.result } diff --git a/pkg/requests/logger.go b/pkg/requests/logger.go new file mode 100644 index 00000000..7eb8023a --- /dev/null +++ b/pkg/requests/logger.go @@ -0,0 +1,11 @@ +package requests + +import ( + "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/logger" + "k8s.io/klog/v2" +) + +var ( + debugLogger = klog.V(logger.RequestDebug) + traceLogger = klog.V(logger.RequestTrace) +)