2024-06-07 14:25:02 +00:00
|
|
|
package log_mw
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/gofiber/fiber/v2"
|
2024-12-10 18:45:41 +00:00
|
|
|
"gitea.pena/PenaSide/hlog"
|
2024-06-07 14:25:02 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
const HlogCtxKey string = "logger"
|
|
|
|
|
|
|
|
func ContextLogger(logger hlog.Logger) fiber.Handler {
|
|
|
|
return func(c *fiber.Ctx) error {
|
|
|
|
c.Locals(HlogCtxKey, logger.With(map[string]string{
|
2024-06-07 18:55:23 +00:00
|
|
|
"ctxuserip": c.Get("X-Real-IP"),
|
|
|
|
"ctxuserport": c.Get("X-Client-Port"),
|
2024-06-07 20:23:48 +00:00
|
|
|
"keydomain": c.Get("Origin"),
|
|
|
|
"keypath": c.Path(),
|
2024-06-07 14:25:02 +00:00
|
|
|
}))
|
|
|
|
return c.Next()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func ExtractLogger(ctx *fiber.Ctx) hlog.Logger {
|
|
|
|
logger := ctx.Context().UserValue(HlogCtxKey).(hlog.Logger)
|
|
|
|
return logger
|
|
|
|
}
|