Documentation ¶
Overview ¶
Package loggers provides loggers implementation for log package
Index ¶
- Constants
- Variables
- func AddToLogContext(ctx context.Context, key string, value interface{}) context.Context
- func FetchCallerInfo(skip int, depth int) (function string, file string, line int)
- type BaseLogger
- type Level
- type LogFields
- type Option
- func WithCallerFieldName(name string) Option
- func WithCallerFileDepth(depth int) Option
- func WithCallerInfo(callerInfo bool) Option
- func WithJSONLogs(json bool) Option
- func WithLevelFieldName(name string) Option
- func WithReplaceStdLogger(replaceStdLogger bool) Option
- func WithTimestampFieldName(name string) Option
- type Options
Constants ¶
const ( // ErrorLevel level. Logs. Used for errors that should definitely be noted. // Commonly used for hooks to send errors to an error tracking service. ErrorLevel = iota // 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 )
These are the different logging levels. You can set the logging level to log on your instance of logger, obtained with `logs.New()`.
Variables ¶
var AllLevels = []Level{ ErrorLevel, WarnLevel, InfoLevel, DebugLevel, }
AllLevels A constant exposing all logging levels
var ( DefaultOptions = Options{ ReplaceStdLogger: false, JSONLogs: true, Level: InfoLevel, TimestampFieldName: "@timestamp", LevelFieldName: "level", CallerInfo: true, CallerFileDepth: 2, CallerFieldName: "caller", } )
DefaultOptions stores all default options in loggers package
Functions ¶
func AddToLogContext ¶
AddToLogContext adds log fields to context. Any info added here will be added to all logs using this context
Types ¶
type BaseLogger ¶
type BaseLogger interface { Log(ctx context.Context, level Level, skip int, args ...interface{}) SetLevel(level Level) GetLevel() Level }
BaseLogger is the interface that needs to be implemented by client loggers
type Level ¶
type Level uint32
Level type
func ParseLevel ¶
ParseLevel takes a string level and returns the log level constant.
type LogFields ¶
type LogFields map[string]interface{}
LogFields contains all fields that have to be added to logs
func FromContext ¶
FromContext fetchs log fields from provided context
type Option ¶
type Option func(*Options)
Option defines an option for BaseLogger
func WithCallerFieldName ¶
WithCallerFieldName sets the name of callerinfo field
func WithCallerFileDepth ¶
WithCallerFileDepth sets the depth of file to use in caller info
func WithCallerInfo ¶
WithCallerInfo enables/disables adding caller info to logs
func WithLevelFieldName ¶
WithLevelFieldName sets the name of the level field in logs
func WithReplaceStdLogger ¶
WithReplaceStdLogger enables/disables replacing std logger
func WithTimestampFieldName ¶
WithTimestampFieldName sets the name of the time stamp field in logs
type Options ¶
type Options struct { ReplaceStdLogger bool JSONLogs bool Level Level TimestampFieldName string LevelFieldName string CallerInfo bool CallerFileDepth int CallerFieldName string }
Options contain all common options for BaseLoggers
func GetDefaultOptions ¶
func GetDefaultOptions() Options
GetDefaultOptions fetches loggers default options
Directories ¶
Path | Synopsis |
---|---|
Package gokit provides BaseLogger implementation for go-kit/log
|
Package gokit provides BaseLogger implementation for go-kit/log |
Package logrus provides a BaseLogger implementation for logrus
|
Package logrus provides a BaseLogger implementation for logrus |
Package stdlog provides a BaseLogger implementation for golang "log" package
|
Package stdlog provides a BaseLogger implementation for golang "log" package |