init project
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
package middlewares
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"time"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
|
||||
"furtuna-be/internal/common/request"
|
||||
)
|
||||
|
||||
func Logger() gin.HandlerFunc {
|
||||
return gin.LoggerWithFormatter(func(param gin.LogFormatterParams) string {
|
||||
var parsedReqInfo request.RequestInfo
|
||||
|
||||
reqInfo, exists := param.Keys[request.ReqInfoKey]
|
||||
if exists {
|
||||
parsedReqInfo = reqInfo.(request.RequestInfo)
|
||||
}
|
||||
|
||||
return fmt.Sprintf("%s - [HTTP] TraceId: %s; UserId: %d; Method: %s; Path: %s; Status: %d, Latency: %s;\n\n",
|
||||
param.TimeStamp.Format(time.RFC1123),
|
||||
parsedReqInfo.TraceId,
|
||||
parsedReqInfo.UserId,
|
||||
param.Method,
|
||||
param.Path,
|
||||
param.StatusCode,
|
||||
param.Latency,
|
||||
)
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user