Skip to content

Commit 5f84236

Browse files
authored
feat: add unique identifier to logged requests (#2055)
1 parent 0e434aa commit 5f84236

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

scw/transport.go

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package scw
22

33
import (
4+
"math/rand"
45
"net/http"
56
"net/http/httputil"
67
"sync/atomic"
@@ -24,16 +25,19 @@ func (l *requestLoggerTransport) RoundTrip(request *http.Request) (*http.Respons
2425
// Get anonymized headers
2526
request.Header = auth.AnonymizeHeaders(request.Header.Clone())
2627

28+
// Add a pseudo random request identifier, this can be used to identify request and response in large logs
29+
requestIdentifier := rand.Uint32()
30+
2731
dump, err := httputil.DumpRequestOut(request, true)
2832
if err != nil {
2933
logger.Warningf("cannot dump outgoing request: %s", err)
3034
} else {
3135
var logString string
32-
logString += "\n--------------- Scaleway SDK REQUEST %d : ---------------\n"
36+
logString += "\n---------- Scaleway SDK REQUEST %d (%x) : ----------\n"
3337
logString += "%s\n"
3438
logString += "---------------------------------------------------------"
3539

36-
logger.Debugf(logString, currentRequestNumber, dump)
40+
logger.Debugf(logString, currentRequestNumber, requestIdentifier, dump)
3741
}
3842

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

58-
logger.Debugf(logString, currentRequestNumber, dump)
62+
logger.Debugf(logString, currentRequestNumber, requestIdentifier, dump)
5963
}
6064

6165
return response, requestError

0 commit comments

Comments
 (0)