Documentation
¶
Index ¶
- Variables
- func AddSafety(w io.Writer) io.Writer
- func Debug(a ...interface{})
- func Debugf(s string, a ...interface{})
- func Error(a ...interface{})
- func Errorf(s string, a ...interface{})
- func Fatal(a ...interface{})
- func Fatalf(s string, a ...interface{})
- func Info(a ...interface{})
- func Infof(s string, a ...interface{})
- func Log(lvl LEVEL, a ...interface{})
- func Logf(lvl LEVEL, s string, a ...interface{})
- func Print(a ...interface{})
- func Printf(s string, a ...interface{})
- func Warn(a ...interface{})
- func Warnf(s string, a ...interface{})
- type Entry
- func (e *Entry) Append(a ...interface{}) *Entry
- func (e *Entry) Appendf(s string, a ...interface{}) *Entry
- func (e *Entry) Context() context.Context
- func (e *Entry) Fields(kv ...KV) *Entry
- func (e *Entry) Hooks() *Entry
- func (e *Entry) Level(lvl LEVEL) *Entry
- func (e *Entry) Msg(a ...interface{})
- func (e *Entry) Msgf(s string, a ...interface{})
- func (e *Entry) Send()
- func (e *Entry) Timestamp() *Entry
- func (e *Entry) TimestampIf() *Entry
- func (e *Entry) WithContext(ctx context.Context) *Entry
- type Formatter
- type Hook
- type HookFunc
- type KV
- type LEVEL
- type Levels
- type Logger
- func (l *Logger) Debug(a ...interface{})
- func (l *Logger) Debugf(s string, a ...interface{})
- func (l *Logger) Entry() *Entry
- func (l *Logger) Error(a ...interface{})
- func (l *Logger) Errorf(s string, a ...interface{})
- func (l *Logger) Fatal(a ...interface{})
- func (l *Logger) Fatalf(s string, a ...interface{})
- func (l *Logger) Info(a ...interface{})
- func (l *Logger) Infof(s string, a ...interface{})
- func (l *Logger) Log(lvl LEVEL, a ...interface{})
- func (l *Logger) Logf(lvl LEVEL, s string, a ...interface{})
- func (l *Logger) Print(a ...interface{})
- func (l *Logger) Printf(s string, a ...interface{})
- func (l *Logger) Warn(a ...interface{})
- func (l *Logger) Warnf(s string, a ...interface{})
- type TextFormat
- func (f TextFormat) AppendBool(buf *bytes.Buffer, value bool)
- func (f TextFormat) AppendBools(buf *bytes.Buffer, value []bool)
- func (f TextFormat) AppendByte(buf *bytes.Buffer, value byte)
- func (f TextFormat) AppendBytes(buf *bytes.Buffer, value []byte)
- func (f TextFormat) AppendDuration(buf *bytes.Buffer, value time.Duration)
- func (f TextFormat) AppendDurations(buf *bytes.Buffer, value []time.Duration)
- func (f TextFormat) AppendFloat(buf *bytes.Buffer, value float64)
- func (f TextFormat) AppendFloats(buf *bytes.Buffer, value []float64)
- func (f TextFormat) AppendInt(buf *bytes.Buffer, value int)
- func (f TextFormat) AppendInts(buf *bytes.Buffer, value []int)
- func (f TextFormat) AppendKey(buf *bytes.Buffer, key string)
- func (f TextFormat) AppendLevel(buf *bytes.Buffer, lvl LEVEL)
- func (f TextFormat) AppendMsg(buf *bytes.Buffer, a ...interface{})
- func (f TextFormat) AppendMsgf(buf *bytes.Buffer, s string, a ...interface{})
- func (f TextFormat) AppendString(buf *bytes.Buffer, value string)
- func (f TextFormat) AppendStrings(buf *bytes.Buffer, value []string)
- func (f TextFormat) AppendTime(buf *bytes.Buffer, value time.Time)
- func (f TextFormat) AppendTimes(buf *bytes.Buffer, value []time.Time)
- func (f TextFormat) AppendTimestamp(buf *bytes.Buffer, now string)
- func (f TextFormat) AppendUint(buf *bytes.Buffer, value uint)
- func (f TextFormat) AppendUints(buf *bytes.Buffer, value []uint)
- func (f TextFormat) AppendValue(buf *bytes.Buffer, value interface{})
Constants ¶
This section is empty.
Variables ¶
var DefaultTextFormat = TextFormat{ Strict: false, Verbose: false, MaxDepth: 10, Levels: DefaultLevels(), }
DefaultTextFormat is the default TextFormat instance
Functions ¶
func Debug ¶
func Debug(a ...interface{})
Debug prints the provided arguments with the debug prefix to the global Logger instance.
func Debugf ¶
func Debugf(s string, a ...interface{})
Debugf prints the provided format string and arguments with the debug prefix to the global Logger instance.
func Error ¶
func Error(a ...interface{})
Error prints the provided arguments with the error prefix to the global Logger instance.
func Errorf ¶
func Errorf(s string, a ...interface{})
Errorf prints the provided format string and arguments with the error prefix to the global Logger instance.
func Fatal ¶
func Fatal(a ...interface{})
Fatal prints the provided arguments with the fatal prefix to the global Logger instance before exiting the program with os.Exit(1).
func Fatalf ¶
func Fatalf(s string, a ...interface{})
Fatalf prints the provided format string and arguments with the fatal prefix to the global Logger instance before exiting the program with os.Exit(1).
func Info ¶
func Info(a ...interface{})
Info prints the provided arguments with the info prefix to the global Logger instance.
func Infof ¶
func Infof(s string, a ...interface{})
Infof prints the provided format string and arguments with the info prefix to the global Logger instance.
func Log ¶
func Log(lvl LEVEL, a ...interface{})
Log prints the provided arguments with the supplied log level to the global Logger instance.
func Logf ¶
Logf prints the provided format string and arguments with the supplied log level to the global Logger instance.
func Print ¶
func Print(a ...interface{})
Print simply prints provided arguments to the global Logger instance.
func Printf ¶
func Printf(s string, a ...interface{})
Printf simply prints provided the provided format string and arguments to the global Logger instance.
Types ¶
type Entry ¶
type Entry struct {
// contains filtered or unexported fields
}
Entry defines an entry in the log, it is NOT safe for concurrent use.
func (*Entry) Append ¶ added in v1.2.5
Append will append the given args formatted using fmt.Sprint(a...) to the Entry.
func (*Entry) Appendf ¶ added in v1.2.5
Appendf will append the given format string and args using fmt.Sprintf(s, a...) to the Entry.
func (*Entry) Fields ¶
Fields appends a map of key-value pairs to the log entry, these are formatted using the `go-format` library and the key / value format directives.
func (*Entry) Hooks ¶
Hooks applies currently set Hooks to the Entry. Please note this CAN be called and perform the Hooks multiple times.
func (*Entry) Level ¶
Level appends the supplied level to the log entry, and sets the entry level. Please note this CAN be called and append log levels multiple times.
func (*Entry) Msg ¶
func (e *Entry) Msg(a ...interface{})
Msg appends the fmt.Sprint() formatted final message to the log and calls .Send()
func (*Entry) Msgf ¶
Msgf appends the fmt.Sprintf() formatted final message to the log and calls .Send()
func (*Entry) Send ¶
func (e *Entry) Send()
Send triggers write of the log entry, skipping if the entry's log LEVEL is below the currently set Logger level, and releases the Entry back to the Logger's Entry pool. So it is NOT safe to continue using this Entry object after calling .Send(), .Msg() or .Msgf()
func (*Entry) Timestamp ¶
Timestamp appends the current timestamp to the log entry. Please note this CAN be called and append the timestamp multiple times.
func (*Entry) TimestampIf ¶
TimestampIf performs Entry.Timestamp() only IF timestamping is enabled for the Logger. Please note this CAN be called multiple times.
type Formatter ¶ added in v1.4.0
type Formatter interface { Append(*format.Buffer, ...interface{}) Appendf(*format.Buffer, string, ...interface{}) }
Formatter represents a means of print formatted values and format strings to an io.Writer.
type HookFunc ¶
type HookFunc func(*Entry)
HookFunc is a simple adapter to allow functions to satisfy the Hook interface
type Levels ¶
Levels defines a mapping of log LEVELs to formatted level strings
func DefaultLevels ¶
func DefaultLevels() Levels
DefaultLevels returns the default set of log levels
type Logger ¶
type Logger struct { // Hooks defines a list of hooks which can be called on each // Entry using the .Hooks() receiver. Hooks []Hook // Format allows specifying the underlying formatting // method/library used. Format Formatter // Levels defines currently set mappings of available log levels // to their string representation. Levels Levels // Timestamp defines whether to automatically append timestamps // to entries written via Logger convience methods and specifically // Entry.TimestampIf(). Timestamp bool // Level is the current log LEVEL, entries at level below the // currently set level will not be output. Level LEVEL // BufferSize is the Entry buffer size to use when allocating // new Entry objects. This should be modified atomically. BufSize int64 // Output is the log's output writer. Output io.Writer // contains filtered or unexported fields }
func (*Logger) Debug ¶
func (l *Logger) Debug(a ...interface{})
Debug prints the provided arguments with the debug prefix
func (*Logger) Debugf ¶
Debugf prints the provided format string and arguments with the debug prefix
func (*Logger) Error ¶
func (l *Logger) Error(a ...interface{})
Error prints the provided arguments with the error prefix
func (*Logger) Errorf ¶
Errorf prints the provided format string and arguments with the error prefix
func (*Logger) Fatal ¶
func (l *Logger) Fatal(a ...interface{})
Fatal prints provided arguments with the fatal prefix before exiting the program with os.Exit(1)
func (*Logger) Fatalf ¶
Fatalf prints provided the provided format string and arguments with the fatal prefix before exiting the program with os.Exit(1)
func (*Logger) Info ¶
func (l *Logger) Info(a ...interface{})
Info prints the provided arguments with the info prefix
func (*Logger) Logf ¶
Logf prints the provided format string and arguments at the supplied log level
func (*Logger) Print ¶
func (l *Logger) Print(a ...interface{})
Print simply prints provided arguments
type TextFormat ¶
type TextFormat struct { // Strict defines whether to use strict key-value pair formatting, i.e. should the level // timestamp and msg be formatted as key-value pairs (with forced quoting for msg) Strict bool // Verbose defines whether to increase output verbosity, i.e. include types with nil values // and force values implementing .String() / .AppendFormat() to be printed as a struct etc. Verbose bool // MaxDepth specifies the max depth of fields the formatter will iterate MaxDepth uint8 // Levels defines the map of log LEVELs to level strings Levels Levels }
TextFormat is the default LogFormat implementation, with very similar formatting to the standard "fmt" package's '%#v' operator. The main difference being that pointers are dereferenced as far as possible in order to reach a printable value. It is also *mildly* faster.
func (TextFormat) AppendBool ¶ added in v1.3.0
func (f TextFormat) AppendBool(buf *bytes.Buffer, value bool)
func (TextFormat) AppendBools ¶ added in v1.3.0
func (f TextFormat) AppendBools(buf *bytes.Buffer, value []bool)
func (TextFormat) AppendByte ¶ added in v1.3.0
func (f TextFormat) AppendByte(buf *bytes.Buffer, value byte)
func (TextFormat) AppendBytes ¶ added in v1.3.0
func (f TextFormat) AppendBytes(buf *bytes.Buffer, value []byte)
func (TextFormat) AppendDuration ¶ added in v1.3.0
func (f TextFormat) AppendDuration(buf *bytes.Buffer, value time.Duration)
func (TextFormat) AppendDurations ¶ added in v1.3.0
func (f TextFormat) AppendDurations(buf *bytes.Buffer, value []time.Duration)
func (TextFormat) AppendFloat ¶ added in v1.3.0
func (f TextFormat) AppendFloat(buf *bytes.Buffer, value float64)
func (TextFormat) AppendFloats ¶ added in v1.3.0
func (f TextFormat) AppendFloats(buf *bytes.Buffer, value []float64)
func (TextFormat) AppendInt ¶ added in v1.3.0
func (f TextFormat) AppendInt(buf *bytes.Buffer, value int)
func (TextFormat) AppendInts ¶ added in v1.3.0
func (f TextFormat) AppendInts(buf *bytes.Buffer, value []int)
func (TextFormat) AppendKey ¶ added in v1.3.0
func (f TextFormat) AppendKey(buf *bytes.Buffer, key string)
func (TextFormat) AppendLevel ¶
func (f TextFormat) AppendLevel(buf *bytes.Buffer, lvl LEVEL)
func (TextFormat) AppendMsg ¶
func (f TextFormat) AppendMsg(buf *bytes.Buffer, a ...interface{})
func (TextFormat) AppendMsgf ¶
func (f TextFormat) AppendMsgf(buf *bytes.Buffer, s string, a ...interface{})
func (TextFormat) AppendString ¶ added in v1.3.0
func (f TextFormat) AppendString(buf *bytes.Buffer, value string)
func (TextFormat) AppendStrings ¶ added in v1.3.0
func (f TextFormat) AppendStrings(buf *bytes.Buffer, value []string)
func (TextFormat) AppendTime ¶ added in v1.3.0
func (f TextFormat) AppendTime(buf *bytes.Buffer, value time.Time)
func (TextFormat) AppendTimes ¶ added in v1.3.0
func (f TextFormat) AppendTimes(buf *bytes.Buffer, value []time.Time)
func (TextFormat) AppendTimestamp ¶
func (f TextFormat) AppendTimestamp(buf *bytes.Buffer, now string)
func (TextFormat) AppendUint ¶ added in v1.3.0
func (f TextFormat) AppendUint(buf *bytes.Buffer, value uint)
func (TextFormat) AppendUints ¶ added in v1.3.0
func (f TextFormat) AppendUints(buf *bytes.Buffer, value []uint)
func (TextFormat) AppendValue ¶ added in v1.2.0
func (f TextFormat) AppendValue(buf *bytes.Buffer, value interface{})