aboutsummaryrefslogtreecommitdiff
path: root/modules/log
diff options
context:
space:
mode:
authorUnknown <joe2010xtmf@163.com>2014-05-11 14:37:12 -0400
committerUnknown <joe2010xtmf@163.com>2014-05-11 14:37:12 -0400
commit0970d6cc38a79c57ffe8e3c85687f7c7c49059be (patch)
treee38c3237ff5add6b624115ec8a7595fe32abfde4 /modules/log
parent98eeec4cbb6967b0e12181f79f2ffc3db00933f8 (diff)
Log to different adapter according to level
Diffstat (limited to 'modules/log')
-rw-r--r--modules/log/log.go41
1 files changed, 31 insertions, 10 deletions
diff --git a/modules/log/log.go b/modules/log/log.go
index 636ea787..eea3c8ad 100644
--- a/modules/log/log.go
+++ b/modules/log/log.go
@@ -10,8 +10,7 @@ import (
)
var (
- logger *logs.BeeLogger
- Mode, Config string
+ loggers []*logs.BeeLogger
)
func init() {
@@ -19,32 +18,54 @@ func init() {
}
func NewLogger(bufLen int64, mode, config string) {
- Mode, Config = mode, config
- logger = logs.NewLogger(bufLen)
+ logger := logs.NewLogger(bufLen)
+
+ isExist := false
+ for _, l := range loggers {
+ if l.Adapter == mode {
+ isExist = true
+ l = logger
+ }
+ }
+ if !isExist {
+ loggers = append(loggers, logger)
+ }
logger.SetLogFuncCallDepth(3)
logger.SetLogger(mode, config)
}
func Trace(format string, v ...interface{}) {
- logger.Trace(format, v...)
+ for _, logger := range loggers {
+ logger.Trace(format, v...)
+ }
}
func Debug(format string, v ...interface{}) {
- logger.Debug(format, v...)
+ for _, logger := range loggers {
+ logger.Debug(format, v...)
+ }
}
func Info(format string, v ...interface{}) {
- logger.Info(format, v...)
+ for _, logger := range loggers {
+ logger.Info(format, v...)
+ }
}
func Error(format string, v ...interface{}) {
- logger.Error(format, v...)
+ for _, logger := range loggers {
+ logger.Error(format, v...)
+ }
}
func Warn(format string, v ...interface{}) {
- logger.Warn(format, v...)
+ for _, logger := range loggers {
+ logger.Warn(format, v...)
+ }
}
func Critical(format string, v ...interface{}) {
- logger.Critical(format, v...)
+ for _, logger := range loggers {
+ logger.Critical(format, v...)
+ }
}