From b6ebc957a4ec8361d1041975c2e044e1085f3158 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=85=89=E6=98=A5?= Date: Wed, 17 Aug 2022 09:48:41 +0800 Subject: [PATCH] - update gin --- const.go | 2 +- gin_gorm.go | 21 +++++++++++++-------- go.mod | 4 ++-- go.sum | 8 ++++---- 4 files changed, 20 insertions(+), 15 deletions(-) diff --git a/const.go b/const.go index 117136d..2e15cfc 100644 --- a/const.go +++ b/const.go @@ -1,3 +1,3 @@ package golog -const Version = "1.0.30" +const Version = "1.0.31" diff --git a/gin_gorm.go b/gin_gorm.go index 1237693..90640f4 100644 --- a/gin_gorm.go +++ b/gin_gorm.go @@ -6,6 +6,7 @@ import ( "encoding/json" "github.com/gin-gonic/gin" "go.dtapp.net/gojson" + "go.dtapp.net/gorequest" "go.dtapp.net/gotime" "go.dtapp.net/gotrace_id" "go.dtapp.net/gourl" @@ -97,6 +98,8 @@ func (c *GinClient) GormMiddleware() gin.HandlerFunc { go func() { + var ctx = gotrace_id.SetGinTraceIdContext(context.Background(), ginCtx) + // 解析请求内容 var xmlBody map[string]string var jsonBody map[string]interface{} @@ -105,19 +108,21 @@ func (c *GinClient) GormMiddleware() gin.HandlerFunc { xmlBody = goxml.XmlDecode(string(data)) } + clientIp := gorequest.ClientIp(ginCtx.Request) + requestClientIpCountry, requestClientIpRegion, requestClientIpProvince, requestClientIpCity, requestClientIpIsp := "", "", "", "", "" if c.ipService != nil { - if net.ParseIP(ginCtx.ClientIP()).To4() != nil { + if net.ParseIP(clientIp).To4() != nil { // 判断是不是IPV4 - _, info := c.ipService.Ipv4(ginCtx.ClientIP()) + _, info := c.ipService.Ipv4(clientIp) requestClientIpCountry = info.Country requestClientIpRegion = info.Region requestClientIpProvince = info.Province requestClientIpCity = info.City requestClientIpIsp = info.ISP - } else if net.ParseIP(ginCtx.ClientIP()).To16() != nil { + } else if net.ParseIP(clientIp).To16() != nil { // 判断是不是IPV6 - info := c.ipService.Ipv6(ginCtx.ClientIP()) + info := c.ipService.Ipv6(clientIp) requestClientIpCountry = info.Country requestClientIpProvince = info.Province requestClientIpCity = info.City @@ -145,7 +150,7 @@ func (c *GinClient) GormMiddleware() gin.HandlerFunc { RequestReferer: ginCtx.Request.Referer(), //【请求】请求referer RequestBody: datatypes.JSON(gojson.JsonEncodeNoError(jsonBody)), //【请求】请求主体 RequestUrlQuery: datatypes.JSON(gojson.JsonEncodeNoError(ginCtx.Request.URL.Query())), //【请求】请求URL参数 - RequestIp: ginCtx.ClientIP(), //【请求】请求客户端Ip + RequestIp: clientIp, //【请求】请求客户端Ip RequestIpCountry: requestClientIpCountry, //【请求】请求客户端城市 RequestIpRegion: requestClientIpRegion, //【请求】请求客户端区域 RequestIpProvince: requestClientIpProvince, //【请求】请求客户端省份 @@ -159,7 +164,7 @@ func (c *GinClient) GormMiddleware() gin.HandlerFunc { }) if err != nil { if c.config.logDebug == true { - c.logClient.Errorf(gotrace_id.SetGinTraceIdContext(context.Background(), ginCtx), err.Error()) + c.logClient.Errorf(ctx, err.Error()) } } } else { @@ -175,7 +180,7 @@ func (c *GinClient) GormMiddleware() gin.HandlerFunc { RequestReferer: ginCtx.Request.Referer(), //【请求】请求referer RequestBody: datatypes.JSON(gojson.JsonEncodeNoError(xmlBody)), //【请求】请求主体 RequestUrlQuery: datatypes.JSON(gojson.JsonEncodeNoError(ginCtx.Request.URL.Query())), //【请求】请求URL参数 - RequestIp: ginCtx.ClientIP(), //【请求】请求客户端Ip + RequestIp: clientIp, //【请求】请求客户端Ip RequestIpCountry: requestClientIpCountry, //【请求】请求客户端城市 RequestIpRegion: requestClientIpRegion, //【请求】请求客户端区域 RequestIpProvince: requestClientIpProvince, //【请求】请求客户端省份 @@ -189,7 +194,7 @@ func (c *GinClient) GormMiddleware() gin.HandlerFunc { }) if err != nil { if c.config.logDebug == true { - c.logClient.Errorf(gotrace_id.SetGinTraceIdContext(context.Background(), ginCtx), "[log.gormRecord]%s", err.Error()) + c.logClient.Errorf(ctx, "[log.gormRecord]%s", err.Error()) } } } diff --git a/go.mod b/go.mod index b3c2acf..eff5ceb 100644 --- a/go.mod +++ b/go.mod @@ -7,12 +7,12 @@ require ( github.com/natefinch/lumberjack v2.0.0+incompatible github.com/rs/zerolog v1.27.0 github.com/sirupsen/logrus v1.9.0 - go.dtapp.net/dorm v1.0.27 + go.dtapp.net/dorm v1.0.28 go.dtapp.net/goip v1.0.25 go.dtapp.net/gojson v1.0.1 go.dtapp.net/gorequest v1.0.27 go.dtapp.net/gotime v1.0.5 - go.dtapp.net/gotrace_id v1.0.5 + go.dtapp.net/gotrace_id v1.0.6 go.dtapp.net/gourl v1.0.0 go.dtapp.net/goxml v1.0.1 go.uber.org/zap v1.22.0 diff --git a/go.sum b/go.sum index b815faf..fd050cd 100644 --- a/go.sum +++ b/go.sum @@ -509,8 +509,8 @@ github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a/go.mod h1:ul22v+Nro/ github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q= github.com/ziutek/mymysql v1.5.4/go.mod h1:LMSpPZ6DbqWFxNCHW77HeMg9I646SAhApZ/wKdgO/C0= -go.dtapp.net/dorm v1.0.27 h1:TnRWVfYYjfvZ1Zi2cyb41ZmsbytB4+5fN/FVnodd2NQ= -go.dtapp.net/dorm v1.0.27/go.mod h1:bHG7BmgeLaAlc56myYF63lwZAIuMeWRAqHBb/L84dLM= +go.dtapp.net/dorm v1.0.28 h1:Igd/K1Hj0IbKLN4lZUxRWXViLtlYjYKVvHcuHscFYuM= +go.dtapp.net/dorm v1.0.28/go.mod h1:bHG7BmgeLaAlc56myYF63lwZAIuMeWRAqHBb/L84dLM= go.dtapp.net/goip v1.0.25 h1:GSgQkR7dc28TX8E1mF3wAy+EEGZ++tgqc8Q85OKZPEY= go.dtapp.net/goip v1.0.25/go.mod h1:dKeNuWJttH4AvvYVHV0FagB6BVvFM1HGDKFxLKr+hkQ= go.dtapp.net/gojson v1.0.1 h1:MHeSGlq1KxzL7rCkm18fhwW4GNORHohdDMmxY5PupKY= @@ -523,8 +523,8 @@ go.dtapp.net/gostring v1.0.6 h1:XqNaThEfHpweLofru5sBqm1UUzc9JWsXyB/M/rTk29w= go.dtapp.net/gostring v1.0.6/go.mod h1:AMnnLjyNxH+cphxyASJGYCzWpVrkP5RncuVo8xL8s3E= go.dtapp.net/gotime v1.0.5 h1:12aNgB2ULpP6QgQHEUkLilZ4ASvhpFxMFQkBwn0par8= go.dtapp.net/gotime v1.0.5/go.mod h1:Gq7eNLr2iMLP18UNWONRq4V3Uhf/ADp4bIrS+Tc6ktY= -go.dtapp.net/gotrace_id v1.0.5 h1:znUwvMcX7ADQn8f750yIb5xJa9tJ4P0fHb5tSo7EFeg= -go.dtapp.net/gotrace_id v1.0.5/go.mod h1:476T5KMJw9c6DM/rJn7y6d28hcNDv4+wew4sd+powes= +go.dtapp.net/gotrace_id v1.0.6 h1:q6s8jy50vt1820b69JKQaFqbhGS5yJGMVtocwOGOPO0= +go.dtapp.net/gotrace_id v1.0.6/go.mod h1:o5kSzNK4s3GrrKpkRKXtAhArtBG1e5N5O5KGPlBlWG4= go.dtapp.net/gourl v1.0.0 h1:Zbe0GiMFyyRy2+bjbVsYulakH5d58w3CDZkUPonlMoQ= go.dtapp.net/gourl v1.0.0/go.mod h1:x9A/pJ3iKDTb6Gu2RtJy2iHg56IowXIcIGQdogqpGjs= go.dtapp.net/goxml v1.0.1 h1:WODsjNpmHTtoeLsXgOjC81qRbu4aXZ3LKBHApNGaPjY=