package logger import ( "github.com/druidcaesa/gotool" rotatelogs "github.com/lestrrat/go-file-rotatelogs" "github.com/sirupsen/logrus" "os" "path" "server/global" "time" ) var Logger *logrus.Logger func InitLog() { config := global.GVA_CONFIG.Logrus logFilePath := config.Path logFileName := config.Name err := os.MkdirAll(logFilePath, os.ModeDir) if err != nil { gotool.Logs.ErrorLog().Println(err) panic(err) } // 日志文件 fileName := path.Join(logFilePath, logFileName) writer, _ := rotatelogs.New( fileName+".%Y%m%d.log", rotatelogs.WithMaxAge(5*24*time.Hour), // 文件最大保存时间 rotatelogs.WithRotationTime(24*time.Hour), // 日志切割时间间隔 ) // 实例化 logger := logrus.New() logger.SetFormatter(&logrus.JSONFormatter{ TimestampFormat: "2006-01-02 15:04:05.000", }) // 设置日志级别 logger.SetLevel(logrus.DebugLevel) logger.SetOutput(writer) Logger = logger }