This commit is contained in:
2023-10-30 17:41:46 +08:00
2 changed files with 9 additions and 10 deletions

View File

@@ -13,9 +13,9 @@ server:
# 日志
logger:
fileDir: "/usr/local/omc/log"
fileName: "ems_agt.log"
fileName: "restagent.log"
level: 2 # 日志记录的等级 0:silent<1:info<2:warn<3:error
maxDay: 30 # 日志会保留 30 天
maxDay: 180 # 日志会保留 180 天
maxSize: 10 # 调整按 10MB 大小的切割
# 静态文件配置, 相对项目根路径或填绝对路径
@@ -175,7 +175,6 @@ user:
# 管理员列表
adminList:
- "1"
- "2"
# char 字符验证码配置
charCaptcha:

View File

@@ -84,13 +84,13 @@ func (l *Logger) checkFile() {
currTime := time.Now()
if l.logDay != currTime.Day() {
l.logDay = currTime.Day()
l.rotateFile(currTime.AddDate(0, 0, -1).Format("2006_01_02"))
l.rotateFile(currTime.AddDate(0, 0, -1).Format("20060102"))
// 移除超过保存最长天数的文件
l.removeOldFile(currTime.AddDate(0, 0, -l.maxDay))
} else if fileInfo.Size() >= l.maxSize {
l.rotateFile(currTime.Format("2006_01_02_150405"))
l.rotateFile(currTime.Format("20060102_150405"))
} else if time.Since(fileInfo.ModTime()).Hours() > 24 {
l.rotateFile(fileInfo.ModTime().Format("2006_01_02"))
l.rotateFile(fileInfo.ModTime().Format("20060102"))
}
time.AfterFunc(1*time.Minute, l.checkFile)
@@ -100,7 +100,7 @@ func (l *Logger) checkFile() {
func (l *Logger) rotateFile(timeFormat string) {
l.fileHandle.Close()
newFileName := fmt.Sprintf("%s.%s", l.fileName, timeFormat)
newFileName := fmt.Sprintf("%s-%s", l.fileName, timeFormat)
newFilePath := filepath.Join(l.filePath, newFileName)
oldfilePath := filepath.Join(l.filePath, l.fileName)
@@ -134,14 +134,14 @@ func (l *Logger) removeOldFile(oldFileDate time.Time) {
}
for _, file := range files {
idx := strings.LastIndex(file.Name(), ".log.")
idx := strings.LastIndex(file.Name(), ".log-")
if idx == -1 {
continue
}
dateStr := file.Name()[idx+5 : idx+15]
dateStr := file.Name()[idx+5 : idx+13]
// 解析日期字符串
fileDate, err := time.Parse("2006_01_02", dateStr)
fileDate, err := time.Parse("20060102", dateStr)
if err != nil {
l.Errorf("logger RemoveOldFile Parse err: %v", err.Error())
continue