From 10c2e6faf164f32335863077c5f22eee63641e7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?France=CC=81=20Wilke?= <francewilke@gmail.com> Date: Mon, 13 Dec 2021 10:55:28 +0200 Subject: [PATCH] Checks for request ID (when debugging) - api logs --- api_logs/api-logs.go | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/api_logs/api-logs.go b/api_logs/api-logs.go index 0c797b7..c569e0c 100644 --- a/api_logs/api-logs.go +++ b/api_logs/api-logs.go @@ -9,9 +9,14 @@ import ( "github.com/aws/aws-lambda-go/events" ) -func GenerateIncomingAPILog(startTime time.Time, requestID string, claim map[string]interface{}, req events.APIGatewayProxyRequest, res events.APIGatewayProxyResponse) ApiLog { +func GenerateIncomingAPILog(startTime time.Time, requestID *string, claim map[string]interface{}, req events.APIGatewayProxyRequest, res events.APIGatewayProxyResponse) ApiLog { endTime := time.Now() + currentRequestID := "" + if requestID != nil { + currentRequestID = *requestID + } + var authType string var authUsername string if req.RequestContext.Identity.CognitoAuthenticationType != "" { @@ -47,7 +52,7 @@ func GenerateIncomingAPILog(startTime time.Time, requestID string, claim map[str Address: req.RequestContext.DomainName, Path: req.Path, ResponseCode: res.StatusCode, - RequestID: requestID, + RequestID: currentRequestID, InitialAuthType: authType, InitialAuthUsername: authUsername, SourceIP: req.RequestContext.Identity.SourceIP, @@ -76,8 +81,14 @@ func GenerateIncomingAPILog(startTime time.Time, requestID string, claim map[str return apiLog } -func GenerateOutgoingAPILog(startTime time.Time, requestID string, claim map[string]interface{}, urlString string, method string, requestBody string, requestHeaders map[string]string, responseBody string, responseCode int) ApiLog { +func GenerateOutgoingAPILog(startTime time.Time, requestID *string, claim map[string]interface{}, urlString string, method string, requestBody string, requestHeaders map[string]string, responseBody string, responseCode int) ApiLog { endTime := time.Now() + + currentRequestID := "" + if requestID != nil { + currentRequestID = *requestID + } + userID, _ := claim["UserID"].(int64) username, _ := claim["Username"].(string) accountID, _ := claim["AccountID"].(int64) @@ -98,7 +109,7 @@ func GenerateOutgoingAPILog(startTime time.Time, requestID string, claim map[str Path: parsedURL.Path, Address: parsedURL.Host, ResponseCode: responseCode, - RequestID: requestID, + RequestID: currentRequestID, UserID: userID, Username: username, AccountID: accountID, -- GitLab