Documentation
¶
Overview ¶
Package logging is an alternative to log package in standard library.
Index ¶
- Variables
- func Critical(args ...interface{})
- func Criticalf(format string, args ...interface{})
- func Criticalln(args ...interface{})
- func Debug(args ...interface{})
- func Debugf(format string, args ...interface{})
- func Debugln(args ...interface{})
- func Error(args ...interface{})
- func Errorf(format string, args ...interface{})
- func Errorln(args ...interface{})
- func Fatal(args ...interface{})
- func Fatalf(format string, args ...interface{})
- func Fatalln(args ...interface{})
- func Info(args ...interface{})
- func Infof(format string, args ...interface{})
- func Infoln(args ...interface{})
- func Notice(args ...interface{})
- func Noticef(format string, args ...interface{})
- func Noticeln(args ...interface{})
- func Panic(args ...interface{})
- func Panicf(format string, args ...interface{})
- func Panicln(args ...interface{})
- func SetLevel(l Level)
- func Warning(args ...interface{})
- func Warningf(format string, args ...interface{})
- func Warningln(args ...interface{})
- type BaseHandler
- type Color
- type FileHandler
- type Formatter
- type Handler
- type Level
- type Logger
- type MultiHandler
- type Record
- type SyslogHandler
- type WriterHandler
Constants ¶
This section is empty.
Variables ¶
var ( DefaultLogger Logger = NewLogger(procName) DefaultLevel Level = INFO DefaultHandler Handler = NewFileHandler(os.Stderr) DefaultFormatter Formatter = defaultFormatter{} )
var LevelColors = map[Level]Color{ CRITICAL: MAGENTA, ERROR: RED, WARNING: YELLOW, NOTICE: GREEN, INFO: NOCOLOR, DEBUG: BLUE, }
var LevelNames = map[Level]string{
CRITICAL: "CRITICAL",
ERROR: "ERROR",
WARNING: "WARNING",
NOTICE: "NOTICE",
INFO: "INFO",
DEBUG: "DEBUG",
}
Functions ¶
func Criticalln ¶
func Criticalln(args ...interface{})
Types ¶
type BaseHandler ¶
func NewBaseHandler ¶
func NewBaseHandler() *BaseHandler
func (*BaseHandler) FilterAndFormat ¶
func (h *BaseHandler) FilterAndFormat(rec *Record) string
func (*BaseHandler) SetFormatter ¶
func (h *BaseHandler) SetFormatter(f Formatter)
func (*BaseHandler) SetLevel ¶
func (h *BaseHandler) SetLevel(l Level)
type FileHandler ¶
type FileHandler struct {
*BaseHandler
// contains filtered or unexported fields
}
FileHandler is a handler implementation that writes the logging output to a *os.File. If given file is a tty, output will be colored.
func NewFileHandler ¶
func NewFileHandler(f *os.File) *FileHandler
func (*FileHandler) Close ¶
func (h *FileHandler) Close() error
func (*FileHandler) Handle ¶
func (h *FileHandler) Handle(rec *Record)
type Formatter ¶
type Formatter interface {
// Format the record and return a message.
Format(*Record) (message string)
}
Formatter formats a record.
type Handler ¶
type Handler interface {
SetFormatter(Formatter)
SetLevel(Level)
// Handle single log record.
Handle(*Record)
// Close the handler.
Close() error
}
Handler handles the output.
type Logger ¶
type Logger interface {
// SetLevel changes the level of the logger. Default is logging.Info.
SetLevel(Level)
// SetHandler replaces the current handler for output. Default is logging.StderrHandler.
SetHandler(Handler)
// SetCallDepth sets the parameter passed to runtime.Caller().
// It is used to get the file name from call stack.
// For example you need to set it to 1 if you are using a wrapper around
// the Logger. Default value is zero.
SetCallDepth(int)
// Fatal is equivalent to Logger.Critical followed by a call to os.Exit(1).
Fatal(args ...interface{})
Fatalf(format string, args ...interface{})
Fatalln(args ...interface{})
// Panic is equivalent to Logger.Critical followed by a call to panic().
Panic(args ...interface{})
Panicf(format string, args ...interface{})
Panicln(args ...interface{})
// Log functions
Critical(args ...interface{})
Criticalf(format string, args ...interface{})
Criticalln(args ...interface{})
Error(args ...interface{})
Errorf(format string, args ...interface{})
Errorln(args ...interface{})
Warning(args ...interface{})
Warningf(format string, args ...interface{})
Warningln(args ...interface{})
Warn(args ...interface{})
Warnf(format string, args ...interface{})
Warnln(args ...interface{})
Notice(args ...interface{})
Noticef(format string, args ...interface{})
Noticeln(args ...interface{})
Info(args ...interface{})
Infof(format string, args ...interface{})
Infoln(args ...interface{})
Debug(args ...interface{})
Debugf(format string, args ...interface{})
Debugln(args ...interface{})
}
Logger is the interface for outputing log messages in different levels. A new Logger can be created with NewLogger() function. You can changed the output handler with SetHandler() function.
type MultiHandler ¶
type MultiHandler struct {
// contains filtered or unexported fields
}
MultiHandler sends the log output to multiple handlers concurrently.
func NewMultiHandler ¶
func NewMultiHandler(handlers ...Handler) *MultiHandler
func (*MultiHandler) Close ¶
func (b *MultiHandler) Close() error
func (*MultiHandler) Handle ¶
func (b *MultiHandler) Handle(rec *Record)
func (*MultiHandler) SetFormatter ¶
func (b *MultiHandler) SetFormatter(f Formatter)
func (*MultiHandler) SetLevel ¶
func (b *MultiHandler) SetLevel(l Level)
type Record ¶
type Record struct {
Message string // Formatted log message
LoggerName string // Name of the logger module
Level Level // Level of the record
Time time.Time // Time of the record (local time)
Filename string // File name of the log call (absolute path)
Line int // Line number in file
ProcessID int // PID
ProcessName string // Name of the process
}
Record contains all of the information about a single log message.
type SyslogHandler ¶
type SyslogHandler struct {
*BaseHandler
// contains filtered or unexported fields
}
SyslogHandler sends the logging output to syslog.
func NewSyslogHandler ¶
func NewSyslogHandler(tag string) (*SyslogHandler, error)
func (*SyslogHandler) Close ¶
func (b *SyslogHandler) Close() error
func (*SyslogHandler) Handle ¶
func (b *SyslogHandler) Handle(rec *Record)
type WriterHandler ¶
type WriterHandler struct {
*BaseHandler
// contains filtered or unexported fields
}
WriterHandler is a handler implementation that writes the logging output to a io.Writer.
func NewWriterHandler ¶
func NewWriterHandler(w io.Writer) *WriterHandler
func (*WriterHandler) Close ¶
func (b *WriterHandler) Close() error
func (*WriterHandler) Handle ¶
func (b *WriterHandler) Handle(rec *Record)
