var ( TRACE *log.Logger DEBUG *log.Logger INFO *log.Logger WARN *log.Logger ERROR *log.Logger CRITICAL *log.Logger FATAL *log.Logger LOG *log.Logger FEEDBACK *Feedback )
func SetFlags(flags int)
SetFlags set the flags for the default logger. "log.Ldate | log.Ltime" by default.
func SetLogListeners(l ...LogListener)
SetLogListeners configures the default logger with one or more log listeners.
func SetLogOutput(handle io.Writer)
SetLogOutput set the log output for the default notepad. Discarded by default.
func SetLogThreshold(threshold Threshold)
SetLogThreshold set the log threshold for the default notepad. Trace by default.
func SetPrefix(prefix string)
SetPrefix set the prefix for the default logger. Empty by default.
func SetStdoutOutput(handle io.Writer)
SetStdoutOutput set the stdout output for the default notepad. Default is stdout.
func SetStdoutThreshold(threshold Threshold)
SetStdoutThreshold set the standard output threshold for the default notepad. Info by default.
Counter is an io.Writer that increments a counter on Write.
type Counter struct {
// contains filtered or unexported fields
}
func (c *Counter) Count() uint64
Count returns the current count.
func (c *Counter) Reset()
Reset resets the counter.
func (c *Counter) Write(p []byte) (n int, err error)
Feedback writes plainly to the outHandle while logging with the standard extra information (date, file, etc).
type Feedback struct {
// contains filtered or unexported fields
}
func (fb *Feedback) Print(v ...interface{})
func (fb *Feedback) Printf(format string, v ...interface{})
func (fb *Feedback) Println(v ...interface{})
A LogListener can ble supplied to a Notepad to listen on log writes for a given threshold. This can be used to capture log events in unit tests and similar. Note that this function will be invoked once for each log threshold. If the given threshold is not of interest to you, return nil. Note that these listeners will receive log events for a given threshold, even if the current configuration says not to log it. That way you can count ERRORs even if you don't print them to the console.
type LogListener func(t Threshold) io.Writer
func LogCounter(counter *Counter, t1 Threshold) LogListener
LogCounter creates a LogListener that counts log statements >= the given threshold.
Notepad is where you leave a note!
type Notepad struct { TRACE *log.Logger DEBUG *log.Logger INFO *log.Logger WARN *log.Logger ERROR *log.Logger CRITICAL *log.Logger FATAL *log.Logger LOG *log.Logger FEEDBACK *Feedback // contains filtered or unexported fields }
func NewNotepad( outThreshold Threshold, logThreshold Threshold, outHandle, logHandle io.Writer, prefix string, flags int, logListeners ...LogListener, ) *Notepad
NewNotepad creates a new Notepad.
func (n *Notepad) GetLogThreshold() Threshold
GetStdoutThreshold returns the defined Treshold for the log logger.
func (n *Notepad) GetStdoutThreshold() Threshold
GetStdoutThreshold returns the Treshold for the stdout logger.
func (n *Notepad) SetFlags(flags int)
SetFlags choose which flags the logger will display (after prefix and message level). See the package log for more informations on this.
func (n *Notepad) SetLogOutput(handle io.Writer)
SetLogOutput changes the file where log messages are written.
func (n *Notepad) SetLogThreshold(threshold Threshold)
SetLogThreshold changes the threshold above which messages are written to the log file.
func (n *Notepad) SetPrefix(prefix string)
SetPrefix changes the prefix used by the notepad. Prefixes are displayed between brackets at the beginning of the line. An empty prefix won't be displayed at all.
func (n *Notepad) SetStdoutThreshold(threshold Threshold)
SetStdoutThreshold changes the threshold above which messages are written to the standard output.
type Threshold int
const ( LevelTrace Threshold = iota LevelDebug LevelInfo LevelWarn LevelError LevelCritical LevelFatal )
func GetLogThreshold() Threshold
GetStdoutThreshold returns the defined Treshold for the log logger.
func GetStdoutThreshold() Threshold
GetStdoutThreshold returns the Treshold for the stdout logger.
func LogThreshold() Threshold
Level returns the current global log threshold.
func StdoutThreshold() Threshold
Level returns the current global output threshold.
func (t Threshold) String() string