Files
hfb_sys/backend/internal/middleware/request_logger.go
T
2026-05-22 15:05:28 +08:00

24 lines
465 B
Go

package middleware
import (
"time"
"github.com/gin-gonic/gin"
"go.uber.org/zap"
)
func RequestLogger(logger *zap.Logger) gin.HandlerFunc {
return func(c *gin.Context) {
start := time.Now()
c.Next()
logger.Info("http request",
zap.String("method", c.Request.Method),
zap.String("path", c.Request.URL.Path),
zap.Int("status", c.Writer.Status()),
zap.Duration("latency", time.Since(start)),
zap.String("client_ip", c.ClientIP()),
)
}
}