Merge pull request #70 from Sirupsen/failed-hook-errors

hooks: lock on the logger before printing to stderr, printf args
This commit is contained in:
Simon Eskildsen 2014-10-23 17:05:14 +02:00
commit 2e36101a19
1 changed files with 5 additions and 1 deletions

View File

@ -76,12 +76,16 @@ func (entry *Entry) log(level Level, msg string) {
entry.Message = msg entry.Message = msg
if err := entry.Logger.Hooks.Fire(level, entry); err != nil { if err := entry.Logger.Hooks.Fire(level, entry); err != nil {
fmt.Fprintf(os.Stderr, "Failed to fire hook\n", err) entry.Logger.mu.Lock()
fmt.Fprintf(os.Stderr, "Failed to fire hook: %v\n", err)
entry.Logger.mu.Unlock()
} }
reader, err := entry.Reader() reader, err := entry.Reader()
if err != nil { if err != nil {
entry.Logger.mu.Lock()
fmt.Fprintf(os.Stderr, "Failed to obtain reader, %v\n", err) fmt.Fprintf(os.Stderr, "Failed to obtain reader, %v\n", err)
entry.Logger.mu.Unlock()
} }
entry.Logger.mu.Lock() entry.Logger.mu.Lock()