jdysya 5cb134fa9d refactor(gateway): 重构 main.go 文件
- 移除日志初始化代码,改为使用 utils.InitLogger()
- 删除用户模型定义,移至 models 包
- 抽离路由处理逻辑到 handlers 包
- 使用 middleware 包中的 AuthRequired 中间件
- 优化数据库连接和迁移逻辑
- 简化 main 函数,提高代码可读性和维护性
2025-02-15 20:16:44 +08:00

38 lines
820 B
Go

package utils
import (
"fmt"
"io"
"os"
"path/filepath"
"time"
"github.com/sirupsen/logrus"
)
var Logger = logrus.New()
func InitLogger() {
if err := os.MkdirAll("log", 0755); err != nil {
panic(fmt.Sprintf("创建日志目录失败: %v", err))
}
logFileName := filepath.Join("log", time.Now().Format("2006-01-02")+".log")
logFile, err := os.OpenFile(logFileName, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644)
if err != nil {
panic(fmt.Sprintf("打开日志文件失败: %v", err))
}
Logger.SetFormatter(&logrus.JSONFormatter{})
Logger.SetOutput(io.MultiWriter(os.Stdout, logFile))
}
func LogAccess(ip, path, method string) {
Logger.WithFields(logrus.Fields{
"ip": ip,
"path": path,
"method": method,
"timestamp": time.Now().Format(time.RFC3339),
}).Info("Page accessed")
}