From 5098c66f4f55259f87e1a51bcc657cf74c9be8f1 Mon Sep 17 00:00:00 2001 From: Terin Stock Date: Sat, 6 May 2017 13:59:14 -0700 Subject: [PATCH] fix(shipping): use `log.NewSyncWriter` in example Replace the use of `serializedLogger` with `log.NewSyncWriter` which provides similar functionality. `SyncWriter` is chosen over `SyncLogger` to reduce the amount of work contained within a lock. --- examples/shipping/main.go | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/examples/shipping/main.go b/examples/shipping/main.go index e348e46e0..8337d61da 100644 --- a/examples/shipping/main.go +++ b/examples/shipping/main.go @@ -7,7 +7,6 @@ import ( "net/http" "os" "os/signal" - "sync" "syscall" "time" @@ -46,8 +45,7 @@ func main() { flag.Parse() var logger log.Logger - logger = log.NewLogfmtLogger(os.Stderr) - logger = &serializedLogger{Logger: logger} + logger = log.NewLogfmtLogger(log.NewSyncWriter(os.Stderr)) logger = log.With(logger, "ts", log.DefaultTimestampUTC) var ( @@ -200,14 +198,3 @@ func storeTestData(r cargo.Repository) { panic(err) } } - -type serializedLogger struct { - mtx sync.Mutex - log.Logger -} - -func (l *serializedLogger) Log(keyvals ...interface{}) error { - l.mtx.Lock() - defer l.mtx.Unlock() - return l.Logger.Log(keyvals...) -}