move logging to metrics middleware

This commit is contained in:
Abhishek Pandey 2023-12-07 18:46:06 -08:00
parent 8dbda8ebda
commit 79d7ffa18c
3 changed files with 28 additions and 11 deletions

View File

@ -476,7 +476,7 @@ func (oc *Collection) streamItems(ctx context.Context, errs *fault.Bus) {
int64(len(oc.driveItems))) int64(len(oc.driveItems)))
defer close(folderProgress) defer close(folderProgress)
semaphoreCh := make(chan struct{}, graph.Parallelism(path.OneDriveService).Item()) semaphoreCh := make(chan struct{}, 1)
defer close(semaphoreCh) defer close(semaphoreCh)
ctx = clues.Add(ctx, ctx = clues.Add(ctx,

View File

@ -93,5 +93,10 @@ func getRequestDump(ctx context.Context, req *http.Request, getBody bool) string
logger.CtxErr(ctx, err).Error("dumping http request") logger.CtxErr(ctx, err).Error("dumping http request")
} }
// Dump all headers
for k, v := range req.Header {
logger.Ctx(ctx).Debugf("Header field %q, Value %q\n", k, v)
}
return string(reqDump) return string(reqDump)
} }

View File

@ -118,7 +118,6 @@ func (mw *LoggingMiddleware) Intercept(
middlewareIndex int, middlewareIndex int,
req *http.Request, req *http.Request,
) (*http.Response, error) { ) (*http.Response, error) {
logReq(req.Context(), req)
// call the next middleware // call the next middleware
resp, err := pipeline.Next(req, middlewareIndex) resp, err := pipeline.Next(req, middlewareIndex)
@ -126,16 +125,16 @@ func (mw *LoggingMiddleware) Intercept(
return resp, err return resp, err
} }
ctx := clues.Add( // ctx := clues.Add(
req.Context(), // req.Context(),
"method", req.Method, // "method", req.Method,
"url", LoggableURL(req.URL.String()), // "url", LoggableURL(req.URL.String()),
"request_content_len", req.ContentLength, // "request_content_len", req.ContentLength,
"resp_status", resp.Status, // "resp_status", resp.Status,
"resp_status_code", resp.StatusCode, // "resp_status_code", resp.StatusCode,
"resp_content_len", resp.ContentLength) // "resp_content_len", resp.ContentLength)
logResp(ctx, resp) //logResp(ctx, resp)
return resp, err return resp, err
} }
@ -336,6 +335,8 @@ func (mw *MetricsMiddleware) Intercept(
middlewareIndex int, middlewareIndex int,
req *http.Request, req *http.Request,
) (*http.Response, error) { ) (*http.Response, error) {
logReq(req.Context(), req)
var ( var (
start = time.Now() start = time.Now()
resp, err = pipeline.Next(req, middlewareIndex) resp, err = pipeline.Next(req, middlewareIndex)
@ -370,5 +371,16 @@ func (mw *MetricsMiddleware) Intercept(
events.IncN(xmrui, events.APICall, xmruHeader) events.IncN(xmrui, events.APICall, xmruHeader)
ctx := clues.Add(
req.Context(),
"method", req.Method,
"url", LoggableURL(req.URL.String()),
"request_content_len", req.ContentLength,
"resp_status", resp.Status,
"resp_status_code", resp.StatusCode,
"resp_content_len", resp.ContentLength)
logResp(ctx, resp)
return resp, err return resp, err
} }