Documentation
¶
Overview ¶
Package log provide the standard interface of logging for what any go libraries want strip off the direct dependency from a known logging library.
Index ¶
- Variables
- func Debugf(msg string, args ...interface{})
- func Errorf(msg string, args ...interface{})
- func Fatalf(msg string, args ...interface{})
- func GetDebugMode() bool
- func GetTraceMode() bool
- func InDebugging() bool
- func Infof(msg string, args ...interface{})
- func Panicf(msg string, args ...interface{})
- func Printf(msg string, args ...interface{})
- func SetDebugMode(b bool)
- func SetLevel(l Level)
- func SetTraceMode(b bool)
- func Tracef(msg string, args ...interface{})
- func Warnf(msg string, args ...interface{})
- type CmdrMinimal
- type Env
- type Level
- type Logger
- type LoggerConfig
Constants ¶
This section is empty.
Variables ¶
var AllLevels = []Level{ PanicLevel, FatalLevel, ErrorLevel, WarnLevel, InfoLevel, DebugLevel, TraceLevel, OffLevel, }
AllLevels is a constant exposing all logging levels
Functions ¶
func GetDebugMode ¶ added in v0.1.13
func GetDebugMode() bool
GetDebugMode return the debug boolean flag generally
func GetTraceMode ¶ added in v0.1.13
func GetTraceMode() bool
GetTraceMode return the trace boolean flag generally
func InDebugging ¶ added in v0.1.13
func InDebugging() bool
InDebugging check if the delve debugger presents
func SetDebugMode ¶ added in v0.1.13
func SetDebugMode(b bool)
SetDebugMode set the debug boolean flag generally
func SetTraceMode ¶ added in v0.1.13
func SetTraceMode(b bool)
SetTraceMode set the trace boolean flag generally
Types ¶
type CmdrMinimal ¶ added in v0.1.13
type CmdrMinimal interface {
InDebugging() bool
GetDebugMode() bool
GetTraceMode() bool
SetDebugMode(b bool)
SetTraceMode(b bool)
}
CmdrMinimal provides the accessors to debug/trace flags
func MinimalEnv ¶ added in v0.1.13
func MinimalEnv() CmdrMinimal
MinimalEnv return the Env/CmdrMinimal object
type Env ¶ added in v0.1.13
type Env struct {
// contains filtered or unexported fields
}
Env structure holds the debug/trace flags and provides CmdrMinimal accessors
func (*Env) GetDebugMode ¶ added in v0.1.13
func (*Env) GetTraceMode ¶ added in v0.1.13
func (*Env) InDebugging ¶ added in v0.1.13
func (*Env) SetDebugMode ¶ added in v0.1.13
func (*Env) SetTraceMode ¶ added in v0.1.13
type Level ¶
type Level uint32
Level type
const ( // PanicLevel level, highest level of severity. Logs and then calls panic with the // message passed to Debug, Info, ... PanicLevel Level = iota // FatalLevel level. Logs and then calls `logger.Exit(1)`. It will exit even if the // logging level is set to Panic. FatalLevel // ErrorLevel level. Logs. Used for errors that should definitely be noted. // Commonly used for hooks to send errors to an error tracking service. ErrorLevel // WarnLevel level. Non-critical entries that deserve eyes. WarnLevel // InfoLevel level. General operational entries about what's going on inside the // application. InfoLevel // DebugLevel level. Usually only enabled when debugging. Very verbose logging. DebugLevel // TraceLevel level. Designates finer-grained informational events than the Debug. TraceLevel // OffLevel level. The logger will be shutdown. OffLevel )
These are the different logging levels. You can set the logging level to log on your instance of logger, obtained with `logrus.New()`.
func ParseLevel ¶
ParseLevel takes a string level and returns the Logrus log level constant.
func (Level) MarshalText ¶
MarshalText convert Level to string and []byte
func (*Level) UnmarshalText ¶
UnmarshalText implements encoding.TextUnmarshaler.
type Logger ¶
type Logger interface {
Tracef(msg string, args ...interface{})
Debugf(msg string, args ...interface{})
Infof(msg string, args ...interface{})
Warnf(msg string, args ...interface{})
Errorf(msg string, args ...interface{})
Fatalf(msg string, args ...interface{})
Printf(msg string, args ...interface{})
SetLevel(lvl Level)
GetLevel() Level
// Setup will be invoked once an instance created
Setup()
}
Logger is a minimal logger with no more dependencies
func NewDummyLogger ¶ added in v0.1.5
func NewDummyLogger() Logger
NewDummyLogger return a dummy logger
func NewStdLogger ¶ added in v0.1.7
func NewStdLogger() Logger
NewStdLogger return a stdlib `log` logger
type LoggerConfig ¶
type LoggerConfig struct {
Enabled bool
Backend string // zap, sugar, logrus
Level string
Format string // text, json, ...
Target string // console, file, console+file
Directory string
DebugMode bool `json:"-" yaml:"-"`
TraceMode bool `json:"-" yaml:"-"`
// MaxSize is the maximum size in megabytes of the log file before it gets
// rotated. It defaults to 100 megabytes.
MaxSize int `json:"maxsize" yaml:"maxsize"`
// MaxAge is the maximum number of days to retain old log files based on the
// timestamp encoded in their filename. Note that a day is defined as 24
// hours and may not exactly correspond to calendar days due to daylight
// savings, leap seconds, etc. The default is not to remove old log files
// based on age.
MaxAge int `json:"maxage" yaml:"maxage"`
// MaxBackups is the maximum number of old log files to retain. The default
// is to retain all old log files (though MaxAge may still cause them to get
// deleted.)
MaxBackups int `json:"maxbackups" yaml:"maxbackups"`
// LocalTime determines if the time used for formatting the timestamps in
// backup files is the computer's local time. The default is to use UTC
// time.
LocalTime bool `json:"localtime" yaml:"localtime"`
// Compress determines if the rotated log files should be compressed
// using gzip. The default is not to perform compression.
Compress bool `json:"compress" yaml:"compress"`
}
LoggerConfig is used for creating a minimal logger with no more dependencies
func NewLoggerConfig ¶
func NewLoggerConfig() *LoggerConfig
NewLoggerConfig returns a default LoggerConfig