Ver Fonte

Merge pull request #2535 from raintank/logging

close all existing loggers before re-initializing loggers. fixes #2533
Torkel Ödegaard há 10 anos atrás
pai
commit
0e18eafcfb
2 ficheiros alterados com 6 adições e 0 exclusões
  1. 4 0
      pkg/log/log.go
  2. 2 0
      pkg/setting/setting.go

+ 4 - 0
pkg/log/log.go

@@ -82,7 +82,11 @@ func Fatal(skip int, format string, v ...interface{}) {
 func Close() {
 	for _, l := range loggers {
 		l.Close()
+		// delete the logger.
+		l = nil
 	}
+	// clear the loggers slice.
+	loggers = nil
 }
 
 // .___        __                 _____

+ 2 - 0
pkg/setting/setting.go

@@ -456,6 +456,8 @@ var logLevels = map[string]int{
 }
 
 func initLogging(args *CommandLineArgs) {
+	//close any existing log handlers.
+	log.Close()
 	// Get and check log mode.
 	LogModes = strings.Split(Cfg.Section("log").Key("mode").MustString("console"), ",")
 	LogsPath = makeAbsolute(Cfg.Section("paths").Key("logs").String(), HomePath)