|
2 | 2 | // go-aah/log source code and usage is governed by a MIT style |
3 | 3 | // license that can be found in the LICENSE file. |
4 | 4 |
|
5 | | -// Package log implements a simple, flexible & powerful logger. |
6 | | -// Currently it supports `console`, `file` (rotation by daily, size, lines), |
7 | | -// logging receivers and logging stats. It also has a predefined 'standard' |
8 | | -// Logger accessible through helper functions `Error{f}`, `Warn{f}`, `Info{f}`, |
9 | | -// `Debug{f}`, `Trace{f}` which are easier to use than creating a Logger manually. |
10 | | -// That logger writes to standard error and prints log `Entry` details |
11 | | -// as per `DefaultPattern`. |
| 5 | +// Package log implements a simple, flexible, non-blocking logger. |
| 6 | +// It supports `console`, `file` (rotation by daily, size, lines). |
| 7 | +// It also has a predefined 'standard' Logger accessible through helper |
| 8 | +// functions `Error{f}`, `Warn{f}`, `Info{f}`, `Debug{f}`, `Trace{f}`, |
| 9 | +// `Print{f,ln}`, `Fatal{f,ln}`, `Panic{f,ln}` which are easier to use than creating |
| 10 | +// a Logger manually. Default logger writes to standard error and prints log |
| 11 | +// `Entry` details as per `DefaultPattern`. |
12 | 12 | // |
13 | | -// Note: aah log package is drop-in replacement for standard go logger with features. |
| 13 | +// aah log package can be used as drop-in replacement for standard go logger |
| 14 | +// with features. |
14 | 15 | // |
15 | 16 | // log.Info("Welcome ", "to ", "aah ", "logger") |
16 | | -// log.Infof("%v, %v, & %v", "simple", "flexible", "powerful logger") |
| 17 | +// log.Infof("%v, %v, %v", "simple", "flexible", "non-blocking logger") |
17 | 18 | // |
18 | 19 | // // Output: |
19 | | -// 2016-07-03 19:22:11.504 INFO - Welcome to aah logger |
20 | | -// 2016-07-03 19:22:11.504 INFO - simple, flexible, & powerful logger |
| 20 | +// 2016-07-03 19:22:11.504 INFO Welcome to aah logger |
| 21 | +// 2016-07-03 19:22:11.504 INFO simple, flexible, non-blocking logger |
21 | 22 | package log |
22 | 23 |
|
23 | 24 | import ( |
@@ -188,19 +189,17 @@ func (l *Logger) SetPattern(pattern string) error { |
188 | 189 | if l.receiver == nil { |
189 | 190 | return ErrLogReceiverIsNil |
190 | 191 | } |
191 | | - |
192 | | - l.m.Lock() |
193 | | - defer l.m.Unlock() |
194 | 192 | return l.receiver.SetPattern(pattern) |
195 | 193 | } |
196 | 194 |
|
197 | 195 | // SetReceiver sets the given receiver into logger instance. |
198 | 196 | func (l *Logger) SetReceiver(receiver Receiver) error { |
| 197 | + l.m.Lock() |
| 198 | + defer l.m.Unlock() |
| 199 | + |
199 | 200 | if receiver == nil { |
200 | 201 | return ErrLogReceiverIsNil |
201 | 202 | } |
202 | | - l.m.Lock() |
203 | | - defer l.m.Unlock() |
204 | 203 |
|
205 | 204 | l.receiver = receiver |
206 | 205 | return l.receiver.Init(l.cfg) |
|
0 commit comments