Files
ginx/middleware/format.go
T
2024-06-25 18:34:00 +08:00

38 lines
887 B
Go

package middleware
import (
"fmt"
"github.com/gin-gonic/gin"
)
func LoggerFormat() gin.HandlerFunc {
return gin.LoggerWithFormatter(func(param gin.LogFormatterParams) string {
// 你的自定义格式
return fmt.Sprintf("[VISIT] UUID:%s | IP:%s | 时间:%s | 方法:%s | 路径:%s | 协议:%s | 状态码:%d | 耗时:%s | 代理头:%s | 错误信息:%s \n",
// UUID
param.Keys["uuid"],
//客户端IP
param.ClientIP,
//时间格式
param.TimeStamp.Format("2006-01-02 15:04:05"),
//http请求方式 get post等
param.Method,
//客户端请求的路径
param.Path,
//http请求协议版本
param.Request.Proto,
//http请求状态码
param.StatusCode,
//请求耗时
param.Latency,
//http请求代理头
param.Request.UserAgent(),
//处理请求错误时设置错误消息
param.ErrorMessage,
)
})
}