Documentation ¶
Overview ¶
Package logrus implements the logging API based on the Logrus logger.
Index ¶
- Constants
- func NewJSONFormatter() *lg.JSONFormatter
- func NewLogRegistry() logging.Registry
- func NewTextFormatter() *lg.TextFormatter
- type CustomFormatter
- type Fields
- type LogMsg
- type Logger
- func (logger *Logger) AddHook(hook lg.Hook)
- func (logger *Logger) ClearTag()
- func (logger *Logger) Debug(args ...interface{})
- func (logger *Logger) Debugf(format string, args ...interface{})
- func (logger *Logger) Debugln(args ...interface{})
- func (logger *Logger) Error(args ...interface{})
- func (logger *Logger) Errorf(format string, args ...interface{})
- func (logger *Logger) Errorln(args ...interface{})
- func (logger *Logger) Fatal(args ...interface{})
- func (logger *Logger) Fatalf(format string, args ...interface{})
- func (logger *Logger) Fatalln(args ...interface{})
- func (logger *Logger) GetLevel() logging.LogLevel
- func (logger *Logger) GetLineInfo(depth int) string
- func (logger *Logger) GetName() string
- func (logger *Logger) GetStaticFields() map[string]interface{}
- func (logger *Logger) GetTag() string
- func (logger *Logger) Info(args ...interface{})
- func (logger *Logger) Infof(format string, args ...interface{})
- func (logger *Logger) Infoln(args ...interface{})
- func (logger *Logger) InitTag(tag ...string)
- func (logger *Logger) Panic(args ...interface{})
- func (logger *Logger) Panicf(format string, args ...interface{})
- func (logger *Logger) Panicln(args ...interface{})
- func (logger *Logger) Print(args ...interface{})
- func (logger *Logger) Printf(format string, args ...interface{})
- func (logger *Logger) Println(args ...interface{})
- func (logger *Logger) SetFormatter(formatter lg.Formatter)
- func (logger *Logger) SetLevel(level logging.LogLevel)
- func (logger *Logger) SetOutput(out io.Writer)
- func (logger *Logger) SetStaticFields(fields map[string]interface{})
- func (logger *Logger) SetTag(tag ...string)
- func (logger *Logger) StandardLogger() *lg.Logger
- func (logger *Logger) Warn(args ...interface{})
- func (logger *Logger) Warnf(format string, args ...interface{})
- func (logger *Logger) Warning(args ...interface{})
- func (logger *Logger) Warningf(format string, args ...interface{})
- func (logger *Logger) Warningln(args ...interface{})
- func (logger *Logger) Warnln(args ...interface{})
- func (logger *Logger) WithField(key string, value interface{}) logging.LogWithLevel
- func (logger *Logger) WithFields(fields map[string]interface{}) logging.LogWithLevel
Constants ¶
const DefaultLoggerName = "defaultLogger"
DefaultLoggerName is logger name of global instance of logger
Variables ¶
This section is empty.
Functions ¶
func NewJSONFormatter ¶
func NewJSONFormatter() *lg.JSONFormatter
NewJSONFormatter creates a new instance of JSONFormatter
func NewTextFormatter ¶
func NewTextFormatter() *lg.TextFormatter
NewTextFormatter creates a new instance of TextFormatter
Types ¶
type CustomFormatter ¶
type CustomFormatter struct { // ShowTimestamp decides whether timestamp field should be part of the log ShowTimestamp bool // ShowLoc decides whether location of the log origin should be part of the log ShowLoc bool // ShowTag decides if the tag field should be part of the log ShowTag bool }
CustomFormatter allows to turn off logging of some fields.
func NewCustomFormatter ¶
func NewCustomFormatter() *CustomFormatter
NewCustomFormatter creates a new instance of CustomFormatter
type LogMsg ¶
LogMsg represent an item to be logged
func (*LogMsg) GetLineInfo ¶
GetLineInfo returns the information of line and file that is associated with frame at the given depth on stack.
func (*LogMsg) GetTag ¶
GetTag returns a tag identifying go routine where the entry was created
func (*LogMsg) WithField ¶
func (entry *LogMsg) WithField(key string, value interface{}) logging.LogWithLevel
WithField creates an entry with a single field.
func (*LogMsg) WithFields ¶
func (entry *LogMsg) WithFields(fields map[string]interface{}) logging.LogWithLevel
WithFields creates an entry with multiple fields.
type Logger ¶
type Logger struct {
// contains filtered or unexported fields
}
Logger is wrapper of Logrus logger. In addition to Logrus functionality it allows to define static log fields that are added to all subsequent log entries. It also automatically appends file name and line where the log is coming from. In order to distinguish logs from different go routines a tag (number that is based on the stack address) is computed. To achieve better readability numeric value of a tag can be replaced by a string using SetTag function.
func DefaultLogger ¶
func DefaultLogger() *Logger
DefaultLogger returns a global Logrus logger. Please notice, that recommended approach is to create a custom logger.
func NewLogger ¶
NewLogger is a constructor creates instances of named logger. This constructor is called from logRegistry which is useful when log levels needs to be changed by management API (such as REST)
Example:
logger := NewLogger("loggerXY") logger.Info()
func (*Logger) AddHook ¶
AddHook adds a hook to the standard logger hooks.
func (*Logger) ClearTag ¶
func (logger *Logger) ClearTag()
ClearTag removes the previously set string tag for the current go routine.
func (*Logger) Debug ¶
func (logger *Logger) Debug(args ...interface{})
Debug logs a message at level Debug on the standard logger.
func (*Logger) Debugf ¶
Debugf logs a message at level Debug on the standard logger.
func (*Logger) Debugln ¶
func (logger *Logger) Debugln(args ...interface{})
Debugln logs a message at level Debug on the standard logger.
func (*Logger) Error ¶
func (logger *Logger) Error(args ...interface{})
Error logs a message at level Error on the standard logger.
func (*Logger) Errorf ¶
Errorf logs a message at level Error on the standard logger.
func (*Logger) Errorln ¶
func (logger *Logger) Errorln(args ...interface{})
Errorln logs a message at level Error on the standard logger.
func (*Logger) Fatal ¶
func (logger *Logger) Fatal(args ...interface{})
Fatal logs a message at level Fatal on the standard logger.
func (*Logger) Fatalf ¶
Fatalf logs a message at level Fatal on the standard logger.
func (*Logger) Fatalln ¶
func (logger *Logger) Fatalln(args ...interface{})
Fatalln logs a message at level Fatal on the standard logger.
func (*Logger) GetLevel ¶
GetLevel returns the standard logger level.
func (*Logger) GetLineInfo ¶
GetLineInfo returns the location (filename + linenumber) of the caller.
func (*Logger) GetStaticFields ¶
GetStaticFields returns currently set map of static fields - key-value pairs that are automatically added into log entry
func (*Logger) GetTag ¶
GetTag returns the tag identifying the caller's go routine.
func (*Logger) Info ¶
func (logger *Logger) Info(args ...interface{})
Info logs a message at level Info on the standard logger.
func (*Logger) Infof ¶
Infof logs a message at level Info on the standard logger.
func (*Logger) Infoln ¶
func (logger *Logger) Infoln(args ...interface{})
Infoln logs a message at level Info on the standard logger.
func (*Logger) InitTag ¶
InitTag sets the tag for the main thread.
func (*Logger) Panic ¶
func (logger *Logger) Panic(args ...interface{})
Panic logs a message at level Panic on the standard logger.
func (*Logger) Panicf ¶
Panicf logs a message at level Panic on the standard logger.
func (*Logger) Panicln ¶
func (logger *Logger) Panicln(args ...interface{})
Panicln logs a message at level Panic on the standard logger.
func (*Logger) Print ¶
func (logger *Logger) Print(args ...interface{})
Print logs a message at level Info on the standard logger.
func (*Logger) Printf ¶
Printf logs a message at level Info on the standard logger.
func (*Logger) Println ¶
func (logger *Logger) Println(args ...interface{})
Println logs a message at level Info on the standard logger.
func (*Logger) SetFormatter ¶
SetFormatter sets the standard logger formatter.
func (*Logger) SetLevel ¶
SetLevel sets the standard logger level.
func (*Logger) SetOutput ¶
SetOutput sets the standard logger output.
func (*Logger) SetStaticFields ¶
SetStaticFields sets a map of fields that will be part of the each subsequent log entry of the logger
func (*Logger) SetTag ¶
SetTag allows to define a string tag for the current go routine. Otherwise numeric identification is used.
func (*Logger) StandardLogger ¶
StandardLogger returns internally used Logrus logger
func (*Logger) Warn ¶
func (logger *Logger) Warn(args ...interface{})
Warn logs a message at level Warn on the standard logger.
func (*Logger) Warnf ¶
Warnf logs a message at level Warn on the standard logger.
func (*Logger) Warning ¶
func (logger *Logger) Warning(args ...interface{})
Warning logs a message at level Warn on the standard logger.
func (*Logger) Warningf ¶
Warningf logs a message at level Warn on the standard logger.
func (*Logger) Warningln ¶
func (logger *Logger) Warningln(args ...interface{})
Warningln logs a message at level Warn on the standard logger.
func (*Logger) Warnln ¶
func (logger *Logger) Warnln(args ...interface{})
Warnln logs a message at level Warn on the standard logger.
func (*Logger) WithField ¶
func (logger *Logger) WithField(key string, value interface{}) logging.LogWithLevel
WithField creates an entry from the standard logger and adds a field to it. If you want multiple fields, use `WithFields`.
Note that it doesn't log until you call Debug, Print, Info, Warn, Fatal or Panic on the LogMsg it returns.
func (*Logger) WithFields ¶
func (logger *Logger) WithFields(fields map[string]interface{}) logging.LogWithLevel
WithFields creates an entry from the standard logger and adds multiple fields to it. This is simply a helper for `WithField`, invoking it once for each field.
Note that it doesn't log until you call Debug, Print, Info, Warn, Fatal or Panic on the LogMsg it returns.