Documentation
¶
Overview ¶
Package irislog defines custom context logger wrapped around rs/zerolog
Index ¶
- Constants
- func InCtx(ctx context.Context, fields ...string) context.Context
- func Set(i *IrisLogger)
- type Config
- type IrisLogger
- func (i *IrisLogger) AddDynaFields(key, value interface{})
- func (i IrisLogger) Debug(meta ...interface{})
- func (i IrisLogger) Error(err error, meta ...interface{})
- func (i IrisLogger) Info(meta ...interface{})
- func (i *IrisLogger) ResetDynaFields()
- func (i *IrisLogger) Set() *IrisLogger
- func (i *IrisLogger) SetDynaFields(dynafields ...interface{})
- func (i *IrisLogger) UpdateLogLevel(level int)
- func (i IrisLogger) Warn(meta ...interface{})
Constants ¶
const ( Disabled = -1 Debug = iota Info Warn Error )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Config ¶
type Config struct {
// contains filtered or unexported fields
}
Config defines config for IrisLogger.
type IrisLogger ¶
type IrisLogger struct {
Level int
Version string
Revision string
StdLog zerolog.Logger
ErrLog zerolog.Logger
// contains filtered or unexported fields
}
IrisLogger defines a default logger for iris that wraps around rs/zerolog.
var ( // StdLogger Logger can be used right out of the box. // Can also be replaced by a custom configured one using Set(*Logger). StdLogger *IrisLogger )
func CtxLogger ¶
func CtxLogger(ctx context.Context) (logger *IrisLogger, ok bool)
CtxLogger returns a logger stored in the context provided by the arguments. We want to avoid runtime error, thus get the logger from context by using logger context keys.
func FromCtx ¶
func FromCtx(ctx context.Context) (i *IrisLogger, fresh bool)
FromCtx returns current logger in context. If there isn't one then returns a new one with given cfg values.
func NewLogger ¶
func NewLogger(level int, name string, stfields ...interface{}) *IrisLogger
NewLogger creates a new Logger. if static fields are provided those values will be defined. the default static fields for each new built instance if they aren't configured yet.
func (*IrisLogger) AddDynaFields ¶
func (i *IrisLogger) AddDynaFields(key, value interface{})
AddDynaFields acts as a receiver instance that add given key-value pairs to current logger.
func (*IrisLogger) ResetDynaFields ¶
func (i *IrisLogger) ResetDynaFields()
ResetDynaFields will reset dynamic fields.
func (*IrisLogger) Set ¶
func (i *IrisLogger) Set() *IrisLogger
Set chains NewLogger with StdLogger to create a new logger. l := irislog.NewLogger(irislog.Debug, "name", "version", "revision").Set().
func (*IrisLogger) SetDynaFields ¶
func (i *IrisLogger) SetDynaFields(dynafields ...interface{})
SetDynaFields acts as a receiver instance that will always append these key-value pairs to the output.
func (*IrisLogger) UpdateLogLevel ¶
func (i *IrisLogger) UpdateLogLevel(level int)
UpdateLogLevel updates log level.