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 SetLogger(l LoggerInterface)
- func Warnw(msg string, keysAndValues ...interface{})
- 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 )
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 ¶
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 SetLogger ¶
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 EncoderConfig ¶
type EncoderConfig = zapcore.EncoderConfig
type FilterKind ¶
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 LoggerConfig ¶
LoggerConfig defines the configuration parameters for constructing tracee's logger implementation.
func NewDefaultLoggerConfig ¶
func NewDefaultLoggerConfig() LoggerConfig
type LoggerFilter ¶
type LoggerFilter struct {
// contains filtered or unexported fields
}
LoggerFilter is used to filter logs.
func NewLoggerFilter ¶
func NewLoggerFilter() LoggerFilter
NewLoggerFilter creates a new LoggerFilter.
func (*LoggerFilter) AddFile ¶
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 ¶
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 ¶
func (lf *LoggerFilter) AddMsg(s string, t FilterKind) error
AddMsg adds a filter value and type to be checked against messages.
func (*LoggerFilter) AddMsgRegex ¶
func (lf *LoggerFilter) AddMsgRegex(regex string, t FilterKind) error
AddMsgRegex adds a filter regex and type to be checked against messages.
func (*LoggerFilter) AddPkg ¶
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 ¶
func (lf *LoggerFilter) Enabled() bool
Enabled returns true if any filters are enabled.
type LoggerInterface ¶
type LoggingConfig ¶
type LoggingConfig struct { Logger LoggerInterface 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 ¶
func NewDefaultLoggingConfig() LoggingConfig