|
|
@@ -86,7 +86,7 @@ type newLoggerFunc func() Logger |
|
|
|
// Logger defines the behavior of a log provider. |
|
|
|
type Logger interface { |
|
|
|
Init(config string) error |
|
|
|
WriteMsg(when time.Time, msg string, level int) error |
|
|
|
WriteMsg(when time.Time, msg string, level int, lable string, env string) error |
|
|
|
Destroy() |
|
|
|
Flush() |
|
|
|
} |
|
|
@@ -122,6 +122,8 @@ type BeeLogger struct { |
|
|
|
signalChan chan string |
|
|
|
wg sync.WaitGroup |
|
|
|
outputs []*nameLogger |
|
|
|
Lable string |
|
|
|
Env string |
|
|
|
} |
|
|
|
|
|
|
|
const defaultAsyncMsgLen = 1e3 |
|
|
@@ -155,6 +157,10 @@ func NewLogger(channelLens ...int64) *BeeLogger { |
|
|
|
return bl |
|
|
|
} |
|
|
|
|
|
|
|
func GetLevelString(level int) string { |
|
|
|
return levelPrefix[level] |
|
|
|
} |
|
|
|
|
|
|
|
// Async set the log to asynchronous and start the goroutine |
|
|
|
func (bl *BeeLogger) Async(msgLen ...int64) *BeeLogger { |
|
|
|
bl.lock.Lock() |
|
|
@@ -235,7 +241,7 @@ func (bl *BeeLogger) DelLogger(adapterName string) error { |
|
|
|
|
|
|
|
func (bl *BeeLogger) writeToLoggers(when time.Time, msg string, level int) { |
|
|
|
for _, l := range bl.outputs { |
|
|
|
err := l.WriteMsg(when, msg, level) |
|
|
|
err := l.WriteMsg(when, msg, level, bl.Lable, bl.Env) |
|
|
|
if err != nil { |
|
|
|
fmt.Fprintf(os.Stderr, "unable to WriteMsg to adapter:%v,error:%v\n", l.name, err) |
|
|
|
} |
|
|
|