浏览代码

Backend configuration: When unknown key was detected the log error was not visible in log file due to logging was initialized after user config file is loaded, logging is now initialized twice, once based on defaults and command line arguments, then then again after user config file, Fixes #1992

Torkel Ödegaard 10 年之前
父节点
当前提交
1c9993f185
共有 1 个文件被更改,包括 8 次插入4 次删除
  1. 8 4
      pkg/setting/setting.go

+ 8 - 4
pkg/setting/setting.go

@@ -289,10 +289,13 @@ func loadConfiguration(args *CommandLineArgs) {
 
 	// command line props
 	commandLineProps := getCommandLineProperties(args.Args)
-
 	// load default overrides
 	applyCommandLineDefaultProperties(commandLineProps)
 
+	// init logging before specific config so we can log errors from here on
+	DataPath = makeAbsolute(Cfg.Section("paths").Key("data").String(), HomePath)
+	initLogging(args)
+
 	// load specified config file
 	loadSpecifedConfigFile(args.Config)
 
@@ -304,6 +307,10 @@ func loadConfiguration(args *CommandLineArgs) {
 
 	// evaluate config values containing environment variables
 	evalConfigValues()
+
+	// update data path and logging config
+	DataPath = makeAbsolute(Cfg.Section("paths").Key("data").String(), HomePath)
+	initLogging(args)
 }
 
 func pathExists(path string) bool {
@@ -339,9 +346,6 @@ func NewConfigContext(args *CommandLineArgs) {
 	setHomePath(args)
 	loadConfiguration(args)
 
-	DataPath = makeAbsolute(Cfg.Section("paths").Key("data").String(), HomePath)
-	initLogging(args)
-
 	AppName = Cfg.Section("").Key("app_name").MustString("Grafana")
 	Env = Cfg.Section("").Key("app_mode").MustString("development")