Skip to content

Commit

Permalink
feat: add unique identifier to logged requests (scaleway#2055)
Browse files Browse the repository at this point in the history
  • Loading branch information
Codelax authored Jun 27, 2024
1 parent 0e434aa commit 5f84236
Showing 1 changed file with 8 additions and 4 deletions.
12 changes: 8 additions & 4 deletions scw/transport.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package scw

import (
"math/rand"
"net/http"
"net/http/httputil"
"sync/atomic"
Expand All @@ -24,16 +25,19 @@ func (l *requestLoggerTransport) RoundTrip(request *http.Request) (*http.Respons
// Get anonymized headers
request.Header = auth.AnonymizeHeaders(request.Header.Clone())

// Add a pseudo random request identifier, this can be used to identify request and response in large logs
requestIdentifier := rand.Uint32()

dump, err := httputil.DumpRequestOut(request, true)
if err != nil {
logger.Warningf("cannot dump outgoing request: %s", err)
} else {
var logString string
logString += "\n--------------- Scaleway SDK REQUEST %d : ---------------\n"
logString += "\n---------- Scaleway SDK REQUEST %d (%x) : ----------\n"
logString += "%s\n"
logString += "---------------------------------------------------------"

logger.Debugf(logString, currentRequestNumber, dump)
logger.Debugf(logString, currentRequestNumber, requestIdentifier, dump)
}

// Restore original headers before sending the request
Expand All @@ -51,11 +55,11 @@ func (l *requestLoggerTransport) RoundTrip(request *http.Request) (*http.Respons
logger.Warningf("cannot dump ingoing response: %s", err)
} else {
var logString string
logString += "\n--------------- Scaleway SDK RESPONSE %d : ---------------\n"
logString += "\n---------- Scaleway SDK RESPONSE %d (%x) : ----------\n"
logString += "%s\n"
logString += "----------------------------------------------------------"

logger.Debugf(logString, currentRequestNumber, dump)
logger.Debugf(logString, currentRequestNumber, requestIdentifier, dump)
}

return response, requestError
Expand Down

0 comments on commit 5f84236

Please sign in to comment.