From 46cd35d1f2829a362d6393e3b118bb80529cc0c0 Mon Sep 17 00:00:00 2001 From: Olivier Poitrey Date: Tue, 6 Jun 2017 10:08:58 -0700 Subject: [PATCH] Remove error returned by Msg and Msgf When error happen, there is nothing the caller can really do and it is not practicle to handle logging errors. Print an error on the standard error instead. --- event.go | 17 +++++++++++------ log.go | 2 +- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/event.go b/event.go index 7d36175..aa4c48a 100644 --- a/event.go +++ b/event.go @@ -3,6 +3,7 @@ package zerolog import ( "fmt" "io/ioutil" + "os" "sync" "time" ) @@ -58,9 +59,9 @@ func (e *Event) Enabled() bool { // // NOTICE: once this method is called, the *Event should be disposed. // Calling Msg twice can have unexpected result. -func (e *Event) Msg(msg string) error { +func (e *Event) Msg(msg string) { if !e.enabled { - return nil + return } if msg != "" { e.buf = appendString(e.buf, MessageFieldName, msg) @@ -68,16 +69,18 @@ func (e *Event) Msg(msg string) error { if e.done != nil { defer e.done(msg) } - return e.write() + if err := e.write(); err != nil { + fmt.Fprintf(os.Stderr, "zerolog: could not write event: %v", err) + } } // Msgf sends the event with formated msg added as the message field if not empty. // // NOTICE: once this methid is called, the *Event should be disposed. // Calling Msg twice can have unexpected result. -func (e *Event) Msgf(format string, v ...interface{}) error { +func (e *Event) Msgf(format string, v ...interface{}) { if !e.enabled { - return nil + return } msg := fmt.Sprintf(format, v...) if msg != "" { @@ -86,7 +89,9 @@ func (e *Event) Msgf(format string, v ...interface{}) error { if e.done != nil { defer e.done(msg) } - return e.write() + if err := e.write(); err != nil { + fmt.Fprintf(os.Stderr, "zerolog: could not write event: %v", err) + } } // Dict adds the field key with a dict to the event context. diff --git a/log.go b/log.go index 8afc5ce..9341615 100644 --- a/log.go +++ b/log.go @@ -264,7 +264,7 @@ func (l Logger) Write(p []byte) (n int, err error) { // Trim CR added by stdlog. p = p[0 : n-1] } - err = l.Log().Msg(string(p)) + l.Log().Msg(string(p)) return }