package zap_server import ( zaprotatelogs "github.com/lestrrat-go/file-rotatelogs" "go.uber.org/zap/zapcore" "os" "path" "time" ) // GetWriteSyncer func GetWriteSyncer() (zapcore.WriteSyncer, error) { fileWriter, err := zaprotatelogs.New( path.Join(CONFIG.Director, "%Y-%m-%d.log"), zaprotatelogs.WithLinkName(CONFIG.LinkName), zaprotatelogs.WithMaxAge(7*24*time.Hour), zaprotatelogs.WithRotationTime(24*time.Hour), ) if CONFIG.LogInConsole { return zapcore.NewMultiWriteSyncer(zapcore.AddSync(os.Stdout), zapcore.AddSync(fileWriter)), err } return zapcore.AddSync(fileWriter), err }