From 1d9b78eb37d1f22fca7de7ed7c02ad8fb53597d9 Mon Sep 17 00:00:00 2001 From: liangzy Date: Wed, 6 May 2020 11:10:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=85=A5=E9=98=BF=E9=87=8Csls,=20?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=85=B3=E9=97=AD=E6=97=A5=E5=BF=97=E9=80=9A?= =?UTF-8?q?=E9=81=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- log.go | 27 ++++++++++++++++++++------- log_test.go | 17 +++++++++-------- 2 files changed, 29 insertions(+), 15 deletions(-) diff --git a/log.go b/log.go index 8ee254d..a8febcd 100644 --- a/log.go +++ b/log.go @@ -86,23 +86,36 @@ func GetAli(label string, channelLens ...int64) (l *Logger) { return } -func Close(lable string) { - if v, ok := loggers.Load(lable); ok { - if tmp, ok := v.(*Logger); ok { - tmp.BeeLogger.Close() - } +func Close(lables ...string) { + wg := &sync.WaitGroup{} + for _, lable := range lables { + wg.Add(1) + go func() { + if v, ok := loggers.Load(lable); ok { + if tmp, ok := v.(*Logger); ok { + loggers.Delete(lable) + tmp.BeeLogger.Close() + } + } + wg.Done() + }() } - loggers.Delete(lable) + wg.Wait() + } func CloseAll() { + wg := &sync.WaitGroup{} loggers.Range(func(key, value interface{}) bool { + wg.Add(1) go func() { if tmp, ok := value.(*Logger); ok { tmp.BeeLogger.Close() + loggers.Delete(key) } + wg.Done() }() - return true }) + wg.Wait() } diff --git a/log_test.go b/log_test.go index 7c285b0..455be50 100644 --- a/log_test.go +++ b/log_test.go @@ -34,17 +34,18 @@ func TestGetLogger(t *testing.T) { func TestGetAliLs(t *testing.T) { - l := GetAli("test_alils") + lable := "test_alils" + l := GetAli(lable).Async(128) - for i := 0; i < 1; i++ { - l.Info("endport") - l.Info("endport") - l.Info("endport") - l.Info("endport") + for i := 0; i < 2; i++ { + l.Info("Info") + l.Debug("Debug") + l.Warn("Warn") + l.Warning("Warning") l.Error("Error") - l.Error("Error\n\n Error") + l.Error("Error\n\n 测试换行") l.Warn("Warn") } - Close("test_alils") + Close(lable, lable, lable) }