wip: 登录和认证

This commit is contained in:
loveuer
2025-07-13 22:57:57 +08:00
parent 48af538f98
commit b48fa05d9f
33 changed files with 1961 additions and 33 deletions

View File

@ -1,9 +1,53 @@
package logger
import "github.com/gofiber/fiber/v3"
import (
"fmt"
"github.com/gofiber/fiber/v3"
"github.com/spf13/cast"
"loveuer/utodo/pkg/logger"
"strconv"
"strings"
"sync"
"time"
)
func New() fiber.Handler {
pool := sync.Pool{
New: func() any {
return &strings.Builder{}
},
}
return func(c fiber.Ctx) error {
return c.Next()
start := time.Now()
err := c.Next()
duration := time.Since(start)
method := c.Method()
path := c.Path()
status := c.Response().StatusCode()
traceId := c.Context().Value(logger.CtxKey)
buf := pool.Get().(*strings.Builder)
defer pool.Put(buf)
buf.Reset()
buf.WriteString("API | ")
buf.WriteString(start.Format("2006-01-02T15:04:05"))
buf.WriteString(" | ")
buf.WriteString(method)
buf.WriteString(" | ")
buf.WriteString(path)
buf.WriteString(" | ")
buf.WriteString(duration.String())
buf.WriteString(" | ")
buf.WriteString(strconv.Itoa(status))
buf.WriteString(" | ")
buf.WriteString(cast.ToString(traceId))
fmt.Println(buf.String())
return err
}
}