Documentation ¶
Index ¶
- Constants
- Variables
- func Debugw(msg string, keysAndValues ...interface{})
- func Errorw(msg string, keysAndValues ...interface{})
- func Fatalw(msg string, keysAndValues ...interface{})
- func Infow(msg string, keysAndValues ...interface{})
- func Init(cfg LoggingConfig)
- func Log(lvl Level, innerAggregation bool, msg string, keysAndValues ...interface{})
- func SetLevel(level Level)
- func SetLogger(l LoggerInterface)
- func Warnw(msg string, keysAndValues ...interface{})
- type AtomicLevel
- type Config
- type Encoder
- type EncoderConfig
- type FilterKind
- type Level
- type Logger
- func (l *Logger) Debugw(msg string, keysAndValues ...interface{})
- func (l *Logger) Errorw(msg string, keysAndValues ...interface{})
- func (l *Logger) Fatalw(msg string, keysAndValues ...interface{})
- func (l *Logger) Infow(msg string, keysAndValues ...interface{})
- func (l *Logger) Sync() error
- func (l *Logger) Warnw(msg string, keysAndValues ...interface{})
- type LoggerConfig
- type LoggerFilter
- func (lf *LoggerFilter) AddFile(s string, t FilterKind) error
- func (lf *LoggerFilter) AddLvl(i int, t FilterKind) error
- func (lf *LoggerFilter) AddMsg(s string, t FilterKind) error
- func (lf *LoggerFilter) AddMsgRegex(regex string, t FilterKind) error
- func (lf *LoggerFilter) AddPkg(s string, t FilterKind) error
- func (lf *LoggerFilter) Enabled() bool
- type LoggerInterface
- type LoggingConfig
Constants ¶
Variables ¶
var ( NewDevelopmentConfig = zap.NewDevelopmentConfig NewProductionConfig = zap.NewProductionConfig NewAtomicLevelAt = zap.NewAtomicLevelAt )
var ( NewConsoleEncoder = zapcore.NewConsoleEncoder NewJSONEncoder = zapcore.NewJSONEncoder )
var ( NewDevelopmentEncoderConfig = zap.NewDevelopmentEncoderConfig NewProductionEncoderConfig = zap.NewProductionEncoderConfig )
var ErrFilterOutExistsForKey = errors.New("filter-out key already exists in filter")
ErrFilterOutExistsForKey must be returned when a filter-out already exists for a given key.
Functions ¶
func Init ¶
func Init(cfg LoggingConfig)
Init sets the package-level base logger using given config It's not thread safe so if required use it always at the beginning
func Log ¶ added in v0.11.0
Log is a generic helper that allows logging by choosing the desired level and if the aggregation should be done. It does NOT override those options. For the case where innerAggregation is set to true, it will only aggregate if pkg logger's aggregation config is also set to true.
func SetLevel ¶ added in v0.10.0
func SetLevel(level Level)
SetLevel sets package-level base logger level, it is threadsafe
func SetLogger ¶ added in v0.14.0
func SetLogger(l LoggerInterface)
SetLogger sets package-level base logger It's not thread safe so if required use it always at the beginning
Types ¶
type AtomicLevel ¶ added in v0.18.0
type AtomicLevel = zap.AtomicLevel
type EncoderConfig ¶
type EncoderConfig = zapcore.EncoderConfig
type FilterKind ¶ added in v0.15.0
type FilterKind int
FilterKind is used to specify whether a filter should be applied to logs that match the filter or logs that do not match the filter.
const ( FilterIn FilterKind = iota FilterOut )
FilterKind values
type Level ¶
const ( DebugLevel Level = zap.DebugLevel InfoLevel Level = zap.InfoLevel WarnLevel Level = zap.WarnLevel ErrorLevel Level = zap.ErrorLevel DPanicLevel Level = zap.DPanicLevel PanicLevel Level = zap.PanicLevel FatalLevel Level = zap.FatalLevel )
type Logger ¶
type Logger struct {
// contains filtered or unexported fields
}
Logger struct
func Current ¶ added in v0.13.0
func Current() *Logger
Current returns the package-level base logger
type LoggerConfig ¶
type LoggerConfig struct { Writer io.Writer Level AtomicLevel Encoder Encoder }
LoggerConfig defines the configuration parameters for constructing tracee's logger implementation. Logger user AtomicLevel to allow changing the logging level at runtime.
func NewDefaultLoggerConfig ¶
func NewDefaultLoggerConfig() LoggerConfig
type LoggerFilter ¶ added in v0.15.0
type LoggerFilter struct {
// contains filtered or unexported fields
}
LoggerFilter is used to filter logs.
func NewLoggerFilter ¶ added in v0.15.0
func NewLoggerFilter() LoggerFilter
NewLoggerFilter creates a new LoggerFilter.
func (*LoggerFilter) AddFile ¶ added in v0.15.0
func (lf *LoggerFilter) AddFile(s string, t FilterKind) error
AddFile adds a filter value and type to be checked against file names.
func (*LoggerFilter) AddLvl ¶ added in v0.15.0
func (lf *LoggerFilter) AddLvl(i int, t FilterKind) error
AddLvl adds a filter value and type to be checked against log levels.
func (*LoggerFilter) AddMsg ¶ added in v0.15.0
func (lf *LoggerFilter) AddMsg(s string, t FilterKind) error
AddMsg adds a filter value and type to be checked against messages.
func (*LoggerFilter) AddMsgRegex ¶ added in v0.15.0
func (lf *LoggerFilter) AddMsgRegex(regex string, t FilterKind) error
AddMsgRegex adds a filter regex and type to be checked against messages.
func (*LoggerFilter) AddPkg ¶ added in v0.15.0
func (lf *LoggerFilter) AddPkg(s string, t FilterKind) error
AddPkg adds a filter value and type to be checked against package names.
func (*LoggerFilter) Enabled ¶ added in v0.15.0
func (lf *LoggerFilter) Enabled() bool
Enabled returns true if any filters are enabled.
type LoggerInterface ¶ added in v0.14.0
type LoggingConfig ¶ added in v0.14.0
type LoggingConfig struct { Logger LoggerInterface LoggerConfig LoggerConfig Filter LoggerFilter Aggregate bool FlushInterval time.Duration }
LoggingConfig defines the configuration of the package level logging.
Users importing tracee as a library may choose to construct a tracee flavored logger with NewLogger() or supply their own interface.
Tracee offers aggregation and filtering support on top of any logger implementation complying to it's interface.
func NewDefaultLoggingConfig ¶ added in v0.14.0
func NewDefaultLoggingConfig() LoggingConfig
func (LoggingConfig) SetLevel ¶ added in v0.18.0
func (lc LoggingConfig) SetLevel(lvl Level)
SetLevel sets the logging level of the package level logger. It is thread safe.