Documentation ¶
Index ¶
- func Debugw(msg string, keysAndValues ...interface{})
- func Errorw(msg string, err error, keysAndValues ...interface{})
- func Infow(msg string, keysAndValues ...interface{})
- func InitFromConfig(conf *Config, name string)
- func NewFieldSampler(core zapcore.Core, config FieldSamplerConfig) zapcore.Core
- func ParseZapLevel(level string) zapcore.Level
- func Proto(val proto.Message) zapcore.ObjectMarshaler
- func SetLogger(l Logger, name string)
- func Warnw(msg string, err error, keysAndValues ...interface{})
- type AtomicFieldSampleRate
- type Config
- type ConfigObserver
- type FieldSampleRate
- type FieldSamplerAction
- type FieldSamplerConfig
- type LogRLogger
- func (l LogRLogger) Debugw(msg string, keysAndValues ...interface{})
- func (l LogRLogger) Errorw(msg string, err error, keysAndValues ...interface{})
- func (l LogRLogger) Infow(msg string, keysAndValues ...interface{})
- func (l LogRLogger) Warnw(msg string, err error, keysAndValues ...interface{})
- func (l LogRLogger) WithCallDepth(depth int) Logger
- func (l LogRLogger) WithComponent(component string) Logger
- func (l LogRLogger) WithItemSampler() Logger
- func (l LogRLogger) WithName(name string) Logger
- func (l LogRLogger) WithValues(keysAndValues ...interface{}) Logger
- func (l LogRLogger) WithoutSampler() Logger
- type Logger
- type ZapLogger
- func (l *ZapLogger) Debugw(msg string, keysAndValues ...interface{})
- func (l *ZapLogger) Errorw(msg string, err error, keysAndValues ...interface{})
- func (l *ZapLogger) Infow(msg string, keysAndValues ...interface{})
- func (l *ZapLogger) ToZap() *zap.SugaredLogger
- func (l *ZapLogger) Warnw(msg string, err error, keysAndValues ...interface{})
- func (l *ZapLogger) WithCallDepth(depth int) Logger
- func (l *ZapLogger) WithComponent(component string) Logger
- func (l *ZapLogger) WithFieldSampler(config FieldSamplerConfig) *ZapLogger
- func (l *ZapLogger) WithItemSampler() Logger
- func (l *ZapLogger) WithName(name string) Logger
- func (l *ZapLogger) WithValues(keysAndValues ...interface{}) Logger
- func (l *ZapLogger) WithoutSampler() Logger
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func InitFromConfig ¶
InitFromConfig initializes a Zap-based logger
func NewFieldSampler ¶
func NewFieldSampler(core zapcore.Core, config FieldSamplerConfig) zapcore.Core
func ParseZapLevel ¶
Types ¶
type AtomicFieldSampleRate ¶
type AtomicFieldSampleRate uint64
func NewAtomicFieldSampleRate ¶
func NewAtomicFieldSampleRate(rate float64) *AtomicFieldSampleRate
func (*AtomicFieldSampleRate) SetRate ¶
func (r *AtomicFieldSampleRate) SetRate(rate float64)
func (*AtomicFieldSampleRate) Threshold ¶
func (r *AtomicFieldSampleRate) Threshold() uint64
type Config ¶
type Config struct { JSON bool `yaml:"json,omitempty"` Level string `yaml:"level,omitempty"` // true to enable log sampling, where the same log message and level will be throttled. // we have two layers of sampling // 1. global sampling - within a second, it will log the first SampleInitial, then every SampleInterval messages. // 2. per participant/track sampling - to be used with Logger.WithItemSampler(). This would be used to throttle // the logs for a particular participant/track. Sample bool `yaml:"sample,omitempty"` ComponentLevels map[string]string `yaml:"component_levels,omitempty"` // global sampling per server // when sampling, the first N logs will be logged SampleInitial int `yaml:"sample_initial,omitempty"` // when sampling, every Mth log will be logged SampleInterval int `yaml:"sample_interval,omitempty"` // participant/track level sampling ItemSampleSeconds int `yaml:"item_sample_seconds,omitempty"` ItemSampleInitial int `yaml:"item_sample_initial,omitempty"` ItemSampleInterval int `yaml:"item_sample_interval,omitempty"` // contains filtered or unexported fields }
func (*Config) AddUpdateObserver ¶
func (c *Config) AddUpdateObserver(cb ConfigObserver)
type ConfigObserver ¶
type FieldSampleRate ¶
type FieldSampleRate interface {
Threshold() uint64
}
type FieldSamplerAction ¶
type FieldSamplerAction int
const ( OmitSampledLog FieldSamplerAction = iota AnnotateSampledLog )
type FieldSamplerConfig ¶
type FieldSamplerConfig struct { FieldName string Rate FieldSampleRate Action FieldSamplerAction AnnotationFieldName string }
type LogRLogger ¶
func (LogRLogger) Debugw ¶
func (l LogRLogger) Debugw(msg string, keysAndValues ...interface{})
func (LogRLogger) Errorw ¶
func (l LogRLogger) Errorw(msg string, err error, keysAndValues ...interface{})
func (LogRLogger) Infow ¶
func (l LogRLogger) Infow(msg string, keysAndValues ...interface{})
func (LogRLogger) Warnw ¶
func (l LogRLogger) Warnw(msg string, err error, keysAndValues ...interface{})
func (LogRLogger) WithCallDepth ¶
func (l LogRLogger) WithCallDepth(depth int) Logger
func (LogRLogger) WithComponent ¶
func (l LogRLogger) WithComponent(component string) Logger
func (LogRLogger) WithItemSampler ¶
func (l LogRLogger) WithItemSampler() Logger
func (LogRLogger) WithName ¶
func (l LogRLogger) WithName(name string) Logger
func (LogRLogger) WithValues ¶
func (l LogRLogger) WithValues(keysAndValues ...interface{}) Logger
func (LogRLogger) WithoutSampler ¶
func (l LogRLogger) WithoutSampler() Logger
type Logger ¶
type Logger interface { Debugw(msg string, keysAndValues ...interface{}) Infow(msg string, keysAndValues ...interface{}) Warnw(msg string, err error, keysAndValues ...interface{}) Errorw(msg string, err error, keysAndValues ...interface{}) WithValues(keysAndValues ...interface{}) Logger WithName(name string) Logger // WithComponent creates a new logger with name as "<name>.<component>", and uses a log level as specified WithComponent(component string) Logger WithCallDepth(depth int) Logger WithItemSampler() Logger // WithoutSampler returns the original logger without sampling WithoutSampler() Logger }
type ZapLogger ¶
type ZapLogger struct { SampleDuration time.Duration SampleInitial int SampleInterval int // contains filtered or unexported fields }
func NewZapLogger ¶
func (*ZapLogger) ToZap ¶
func (l *ZapLogger) ToZap() *zap.SugaredLogger
func (*ZapLogger) WithCallDepth ¶
func (*ZapLogger) WithComponent ¶
func (*ZapLogger) WithFieldSampler ¶
func (l *ZapLogger) WithFieldSampler(config FieldSamplerConfig) *ZapLogger
func (*ZapLogger) WithItemSampler ¶
func (*ZapLogger) WithValues ¶
func (*ZapLogger) WithoutSampler ¶
Click to show internal directories.
Click to hide internal directories.