From acbdeb62e8b47ad20991a2b70c2200a65e07cd4a Mon Sep 17 00:00:00 2001 From: slene Date: Fri, 4 Apr 2014 07:33:13 +0800 Subject: [PATCH] beego: fix log output when SetLogger has error --- logs/console.go | 3 +++ logs/log.go | 5 +++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/logs/console.go b/logs/console.go index 438facfe..6af6aa16 100644 --- a/logs/console.go +++ b/logs/console.go @@ -43,6 +43,9 @@ func NewConsole() LoggerInterface { // init console logger. // jsonconfig like '{"level":LevelTrace}'. func (c *ConsoleWriter) Init(jsonconfig string) error { + if len(jsonconfig) == 0 { + return nil + } err := json.Unmarshal([]byte(jsonconfig), c) if err != nil { return err diff --git a/logs/log.go b/logs/log.go index c859c1e6..025da55c 100644 --- a/logs/log.go +++ b/logs/log.go @@ -79,14 +79,15 @@ func (bl *BeeLogger) SetLogger(adaptername string, config string) error { if log, ok := adapters[adaptername]; ok { lg := log() err := lg.Init(config) + bl.outputs[adaptername] = lg if err != nil { + fmt.Println("logs.BeeLogger.SetLogger: " + err.Error()) return err } - bl.outputs[adaptername] = lg - return nil } else { return fmt.Errorf("logs: unknown adaptername %q (forgotten Register?)", adaptername) } + return nil } // remove a logger adapter in BeeLogger.