只保存15天以内的日志文件
This commit is contained in:
parent
326fc96371
commit
ff5c8bc777
@ -599,6 +599,7 @@ func (ad *GameLogic) CreateDailyLogFile() {
|
||||
}
|
||||
ad.Mlogger, ad.MloggerErr = log.NewDailyLog(now, "Debug", "log", l.LstdFlags)
|
||||
if ad.MloggerErr != nil {
|
||||
log.Debug(ad.MloggerErr.Error())
|
||||
return
|
||||
}
|
||||
log.Export(ad.Mlogger)
|
||||
@ -607,6 +608,38 @@ func (ad *GameLogic) CreateDailyLogFile() {
|
||||
log.Export(ad.Mlogger)
|
||||
}
|
||||
ad.Mlogger.Debug("CreateDailyLogFile")
|
||||
|
||||
// Remove logs older than 15 days
|
||||
ad.RemoveOldLogs(15)
|
||||
}
|
||||
|
||||
func (ad *GameLogic) RemoveOldLogs(days int) {
|
||||
dir := conf.Server.LogPath
|
||||
files, err := os.ReadDir(dir)
|
||||
if err != nil {
|
||||
log.Debug("Failed to read log directory: %v", err)
|
||||
return
|
||||
}
|
||||
|
||||
cutoff := time.Now().AddDate(0, 0, -days)
|
||||
for _, file := range files {
|
||||
if file.IsDir() {
|
||||
continue
|
||||
}
|
||||
fileInfo, err := file.Info()
|
||||
if err != nil {
|
||||
log.Debug("Failed to get file info: %v", err)
|
||||
continue
|
||||
}
|
||||
if fileInfo.ModTime().Before(cutoff) {
|
||||
err := os.Remove(dir + "/" + file.Name())
|
||||
if err != nil {
|
||||
log.Debug("Failed to remove old log file: %v", err)
|
||||
} else {
|
||||
log.Debug("Removed old log file: %s", file.Name())
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (ad *GameLogic) RegisterNetWorkFunc() {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user