diff --git a/middleware/init_request.go b/middleware/init_request.go index 3cbd8f3..286c16b 100644 --- a/middleware/init_request.go +++ b/middleware/init_request.go @@ -28,8 +28,8 @@ import ( func InitRequest() gin.HandlerFunc { return func(ctx *gin.Context) { httpHandleConfig := define.GetHttpHandleConfig() - traceID := getTraceID(ctx) - requestID := getRequestID(ctx, traceID) + requestID := getRequestID(ctx) + traceID := getTraceID(ctx, requestID) ctx.Set(httpHandleConfig.TraceIDField, traceID) ctx.Set(httpHandleConfig.RequestIDField, requestID) ctx.Set(httpHandleConfig.StartRequestTimeField, time.Now().UnixMilli()) @@ -37,12 +37,12 @@ func InitRequest() gin.HandlerFunc { } } -// getTraceID 生成traceID +// getRequestID 生成 request id // // Author : go_developer@163.com<白茶清欢> // // Date : 23:12 2022/6/25 -func getTraceID(ctx *gin.Context) string { +func getRequestID(ctx *gin.Context) string { return fmt.Sprintf( "%v-%v-%v-%v", time.Now().UnixNano()/1e6, @@ -52,18 +52,18 @@ func getTraceID(ctx *gin.Context) string { ) } -// getRequestID 生成requestID +// getTraceID 生成 trace id // // Author : go_developer@163.com<白茶清欢> // // Date : 23:12 2022/6/25 -func getRequestID(ctx *gin.Context, traceID string) string { - requestID := ctx.GetHeader("X-Forward-Request-Id") - if len(requestID) > 0 { - return requestID - } +func getTraceID(ctx *gin.Context, requestID string) string { + traceID := ctx.GetHeader("X-Forward-Trace-Id") if len(traceID) > 0 { return traceID } - return getTraceID(ctx) + if len(requestID) > 0 { + return requestID + } + return getRequestID(ctx) } diff --git a/util/context.go b/util/context.go index 5cbd7be..a7e5637 100644 --- a/util/context.go +++ b/util/context.go @@ -29,7 +29,7 @@ func GinCtxToContext(ctx *gin.Context) context.Context { requestData[fmt.Sprintf("%v", k)] = v } if nil != ctx.Request { - requestData[consts.GinRequestURIField] = ctx.Request.RequestURI + requestData[consts.GinRequestURIField] = ctx.Request.URL.Path requestData[consts.GinRequestMethodField] = ctx.Request.Method }