logutil

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 23, 2023 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultLogMaxSize is the default size of log files.
	DefaultLogMaxSize = 300 // MB
	// DefaultLogFormat is the default format of the log.
	DefaultLogFormat = "text"
	// DefaultSlowThreshold is the default slow log threshold in millisecond.
	DefaultSlowThreshold = 300
	// DefaultQueryLogMaxLen is the default max length of the query in the log.
	DefaultQueryLogMaxLen = 4096
	// DefaultRecordPlanInSlowLog is the default value for whether enable log query plan in the slow log.
	DefaultRecordPlanInSlowLog = 1
	// DefaultTiDBEnableSlowLog enables TiDB to log slow queries.
	DefaultTiDBEnableSlowLog = true
)
View Source
const (
	// SlowLogTimeFormat is the time format for slow log.
	SlowLogTimeFormat = time.RFC3339Nano
	// OldSlowLogTimeFormat is the first version of the the time format for slow log, This is use for compatibility.
	OldSlowLogTimeFormat = "2006-01-02-15:04:05.999999999 -0700"
)
View Source
const TraceEventKey = "event"

TraceEventKey presents the TraceEventKey in span log.

Variables

View Source
var CtxLogKey = ctxLogKeyType{}

CtxLogKey indicates the context key for logger public for test usage.

View Source
var EmptyFileLogConfig = FileLogConfig{}

EmptyFileLogConfig is an empty FileLogConfig.

View Source
var SlowQueryLogger = log.L()

SlowQueryLogger is used to log slow query, InitLogger will modify it according to config file.

Functions

func BgLogger

func BgLogger() *zap.Logger

BgLogger is alias of `logutil.BgLogger()`

func Event

func Event(ctx context.Context, event string)

Event records event in current tracing span.

func Eventf

func Eventf(ctx context.Context, format string, args ...interface{})

Eventf records event in current tracing span with format support.

func Hex

func Hex(msg proto.Message) fmt.Stringer

Hex defines a fmt.Stringer for proto.Message. We can't define the String() method on proto.Message, but we can wrap it.

func InitLogger

func InitLogger(cfg *LogConfig) error

InitLogger initializes a logger with cfg.

func Logger

func Logger(ctx context.Context) *zap.Logger

Logger gets a contextual logger from current context. contextual logger will output common fields from context.

func ReplaceLogger

func ReplaceLogger(cfg *LogConfig) error

ReplaceLogger replace global logger instance with given log config.

func SetLevel

func SetLevel(level string) error

SetLevel sets the zap logger's level.

func SetTag

func SetTag(ctx context.Context, key string, value interface{})

SetTag sets tag kv-pair in current tracing span

func WithConnID

func WithConnID(ctx context.Context, connID uint64) context.Context

WithConnID attaches connId to context.

func WithKeyValue

func WithKeyValue(ctx context.Context, key, value string) context.Context

WithKeyValue attaches key/value to context.

func WithTraceLogger

func WithTraceLogger(ctx context.Context, connID uint64) context.Context

WithTraceLogger attaches trace identifier to context

Types

type FileLogConfig

type FileLogConfig struct {
	log.FileLogConfig
}

FileLogConfig serializes file log related config in toml/json.

func NewFileLogConfig

func NewFileLogConfig(maxSize uint) FileLogConfig

NewFileLogConfig creates a FileLogConfig.

type LogConfig

type LogConfig struct {
	log.Config

	// SlowQueryFile filename, default to File log config on empty.
	SlowQueryFile string
}

LogConfig serializes log related config in toml/json.

func NewLogConfig

func NewLogConfig(level, format, slowQueryFile string, fileCfg FileLogConfig, disableTimestamp bool, opts ...func(*log.Config)) *LogConfig

NewLogConfig creates a LogConfig.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL