Browse Source

日志最大保留天数

xyxie 1 year ago
parent
commit
28b4ea43df
2 changed files with 12 additions and 6 deletions
  1. 3 0
      utils/config.go
  2. 9 6
      utils/logs.go

+ 3 - 0
utils/config.go

@@ -184,6 +184,7 @@ var (
 	BinLogFile  string
 	ApiLogPath  string //接口请求地址和接口返回值日志存放地址
 	ApiLogFile  string
+	LogMaxDays  int //日志最大保留天数
 )
 
 func init() {
@@ -311,6 +312,8 @@ func init() {
 		BinLogFile = config["binlog_file"]
 		ApiLogPath = config["apilog_path"]
 		ApiLogFile = config["apilog_file"]
+		logMaxDaysStr := config["log_max_day"]
+		LogMaxDays, _ = strconv.Atoi(logMaxDaysStr)
 	}
 
 	// ES配置

+ 9 - 6
utils/logs.go

@@ -24,6 +24,9 @@ var FileLogData = logrus.New()
 var Binlog *logs.BeeLogger
 
 func init() {
+	if LogMaxDays == 0 {
+		LogMaxDays = 30
+	}
 	logPath := LogPath
 	if logPath == "" {
 		logPath = DefaultLogPath
@@ -147,11 +150,11 @@ func rolling(fLog *logrus.Logger, config *lumberjack.Logger) {
 
 func getDefaultLogrusConfig(logFile string) (config *lumberjack.Logger) {
 	config = &lumberjack.Logger{
-		Filename:   logFile, //日志文件位置
-		MaxSize:    256,     // 单文件最大容量,单位是MB
-		MaxBackups: 30,      // 最大保留过期文件个数
-		MaxAge:     30,      // 保留过期文件的最大时间间隔,单位是天
-		Compress:   true,    // 是否需要压缩滚动日志, 使用的 gzip 压缩
+		Filename:   logFile,    //日志文件位置
+		MaxSize:    256,        // 单文件最大容量,单位是MB
+		MaxBackups: LogMaxDays, // 最大保留过期文件个数
+		MaxAge:     LogMaxDays, // 保留过期文件的最大时间间隔,单位是天
+		Compress:   true,       // 是否需要压缩滚动日志, 使用的 gzip 压缩
 		LocalTime:  true,
 	}
 	return
@@ -163,7 +166,7 @@ func getDefaultLogConfig() logConfig {
 		MaxLines: 0,
 		MaxSize:  1 << 28,
 		Daily:    true,
-		MaxDays:  30, //我就是喜欢31天,咋滴,不喜欢你就自己改-_-!
+		MaxDays:  LogMaxDays, //我就是喜欢31天,咋滴,不喜欢你就自己改-_-!
 		Rotate:   true,
 		Level:    logs.LevelTrace,
 		//Perm:     "",