feat(middleware): 请求日志新增 handler 字段定位实际处理函数
- 通过 c.HandlerName() 获取处理请求的 handler 函数名 - 解决 caller 始终指向中间件文件无法定位业务代码的问题 - 同步更新架构文档日志示例,补充 caller/handler 说明 Made-with: Cursor
This commit is contained in:
@@ -71,9 +71,13 @@ func Logger() gin.HandlerFunc {
|
||||
status := rbw.Status()
|
||||
path := c.Request.URL.Path
|
||||
|
||||
// handler 名称:如 "main.main.func1" 或 "controller.auth_controller.Login"
|
||||
handler := c.HandlerName()
|
||||
|
||||
fields := []zap.Field{
|
||||
zap.String("method", c.Request.Method),
|
||||
zap.String("path", path),
|
||||
zap.String("handler", handler),
|
||||
zap.Int("status", status),
|
||||
zap.Duration("latency", latency),
|
||||
zap.String("ip", c.ClientIP()),
|
||||
|
||||
Reference in New Issue
Block a user