log

package
v1.8.6 Latest Latest
Warning

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

Go to latest
Published: May 25, 2024 License: MIT Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const (
	FieldStack    = "stack"
	FieldApi      = "api"
	FieldSource   = "source"
	FieldResult   = "result"
	FieldParam    = "param"
	FieldFunc     = "func"
	FieldMsg      = "msg"
	FieldPosition = "position"
	FieldTraceId  = "traceId"
	FieldSpanId   = "spanId"
	FieldKey      = "key"
	FieldValue    = "value"
	FieldInvalid  = "invalid"
	FieldIgnored  = "ignored"

	FieldType     = "type"
	FieldIP       = "ip"
	FieldHostname = "hostname"

	FieldTime   = "time"
	FieldApp    = "app"
	FieldLevel  = "level"
	FieldCaller = "caller"
)
View Source
const (
	EncodeLevelTypeColor        = "color"
	EncodeLevelTypCapital       = "capital"
	EncodeLevelTypeCapitalColor = "capitalColor"
)

Variables

This section is empty.

Functions

func Debug

func Debug(args ...interface{})

func Debugf

func Debugf(template string, args ...interface{})

func Debugw

func Debugw(msg string, fields ...zap.Field)

func Error

func Error(args ...interface{})

func Errorf

func Errorf(template string, args ...interface{})

func Errorw

func Errorw(msg string, fields ...zap.Field)

func Fatal

func Fatal(args ...interface{})

func Fatalf

func Fatalf(template string, args ...interface{})

func FileWithLineNum

func FileWithLineNum() string

FileWithLineNum return the file name and line number of the current file

func FromContext

func FromContext(ctx context.Context) (string, bool)

FromContext returns the User value stored in ctx, if any.

func Info

func Info(args ...interface{})

func Infof

func Infof(template string, args ...interface{})

func Infow

func Infow(msg string, fields ...zap.Field)

func NewContext

func NewContext(ctx context.Context) context.Context

NewContext returns a new Context that carries value u.

func NewDevelopmentEncoderConfig

func NewDevelopmentEncoderConfig() zapcore.EncoderConfig

func NewProductionEncoderConfig

func NewProductionEncoderConfig() zapcore.EncoderConfig

func Panic

func Panic(args ...interface{})

func Panicf

func Panicf(template string, args ...interface{})

func Print

func Print(args ...interface{})

func Printf

func Printf(template string, args ...interface{})

func Println added in v1.0.6

func Println(args ...interface{})

func SetDefaultLogger

func SetDefaultLogger(lf *Config, cores ...zapcore.Core)

func Sync

func Sync() error

func TraceIdField

func TraceIdField(ctx context.Context) zap.Field

func Warn

func Warn(args ...interface{})

func Warnf

func Warnf(template string, args ...interface{})

func Warnw

func Warnw(msg string, fields ...zap.Field)

Types

type BytesJson

type BytesJson json.RawMessage

func (BytesJson) MarshalJSON

func (b BytesJson) MarshalJSON() ([]byte, error)

func (BytesJson) MarshalLogObject

func (b BytesJson) MarshalLogObject(enc zapcore.ObjectEncoder) error

func (*BytesJson) UnmarshalJSON

func (b *BytesJson) UnmarshalJSON(raw []byte) error

type CompleteLogInterface

type CompleteLogInterface interface {
	Debug(v ...interface{})
	Debugf(format string, v ...interface{})
	Info(v ...interface{})
	Infof(format string, v ...interface{})
	Warning(v ...interface{})
	Warningf(format string, v ...interface{})
	Error(v ...interface{})
	Errorf(format string, v ...interface{})

	Fatal(v ...interface{})
	Fatalf(format string, v ...interface{})

	Panic(v ...interface{})
	Panicf(format string, v ...interface{})
}

type Config

type Config struct {
	Name              string `json:"name,omitempty"` //系统名称namespace.service
	Development       bool
	DisableCaller     bool
	DisableStacktrace bool
	Level             zapcore.Level         `json:"level,omitempty"`
	EncodeLevelType   string                `json:"encodeLevelType,omitempty"`
	Sampling          *zap.SamplingConfig   `json:"sampling" yaml:"sampling"`
	OutputPaths       OutPutPaths           `json:"outputPaths"`
	EncoderConfig     zapcore.EncoderConfig `json:"encoderConfig" yaml:"encoderConfig"`
	ErrorOutputPaths  []string
	// InitialFields is a collection of fields to add to the root logger.
	InitialFields map[string]interface{} `json:"initialFields" yaml:"initialFields"`
}

func NewDevelopmentConfig

func NewDevelopmentConfig(appName string) *Config

func NewProductionConfig

func NewProductionConfig(appName string) *Config

func (*Config) Init

func (lc *Config) Init()

func (*Config) NewLogger

func (lc *Config) NewLogger(cores ...zapcore.Core) *Logger

初始化日志对象

type IdKey

type IdKey struct{}

type LogInterface

type LogInterface interface {
	Debug(args ...interface{})
	Info(args ...interface{})
	Warn(args ...interface{})
	Error(args ...interface{})
}

日志接口 go目前的日志库比较混乱,需要一个接口来统一定义,各个库的日志应用该接口实现,方便替换底层实体

type Logger

type Logger struct {
	*zap.Logger
}

func Default

func Default() *Logger

func GetCallerSkipLogger added in v1.2.3

func GetCallerSkipLogger(skip int) *Logger

func GetNoCallerLogger added in v1.2.3

func GetNoCallerLogger() *Logger

func (*Logger) AddCore

func (l *Logger) AddCore(newCore zapcore.Core) *Logger

AddCore warp the zap AddCore.

func (*Logger) AddSkip

func (l *Logger) AddSkip(skip int) *Logger

AddSkip warp the zap AddCallerSkip.

func (*Logger) DPanic

func (l *Logger) DPanic(args ...interface{})

DPanic uses fmt.Sprint to construct and log a message. In development, the logger then panics. (See DPanicLevel for details.)

func (*Logger) DPanicf

func (l *Logger) DPanicf(template string, args ...interface{})

DPanicf uses fmt.Sprintf to log a templated message. In development, the logger then panics. (See DPanicLevel for details.)

func (*Logger) DPanicw

func (l *Logger) DPanicw(msg string, fields ...zap.Field)

DPanic logs a message at DPanicLevel. The message includes any fields passed at the log site, as well as any fields accumulated on the logger.

If the logger is in development mode, it then panics (DPanic means "development panic"). This is useful for catching errors that are recoverable, but shouldn't ever happen.

func (*Logger) Debug

func (l *Logger) Debug(args ...interface{})

Debug uses fmt.Sprint to construct and log a message.

func (*Logger) Debugf

func (l *Logger) Debugf(template string, args ...interface{})

Debugf uses fmt.Sprintf to log a templated message.

func (*Logger) Debugw

func (l *Logger) Debugw(msg string, fields ...zap.Field)

Debug logs a message at DebugLevel. The message includes any fields passed at the log site, as well as any fields accumulated on the logger.

func (*Logger) Enabled added in v1.4.0

func (l *Logger) Enabled(ctx context.Context, level slog.Level) bool

func (*Logger) Error

func (l *Logger) Error(args ...interface{})

Error uses fmt.Sprint to construct and log a message.

func (*Logger) Errorf

func (l *Logger) Errorf(template string, args ...interface{})

Errorf uses fmt.Sprintf to log a templated message.

func (*Logger) Errorln

func (l *Logger) Errorln(args ...interface{})

func (*Logger) Errorw

func (l *Logger) Errorw(msg string, fields ...zap.Field)

Error logs a message at ErrorLevel. The message includes any fields passed at the log site, as well as any fields accumulated on the logger.

func (*Logger) Fatal

func (l *Logger) Fatal(args ...interface{})

Fatal uses fmt.Sprint to construct and log a message, then calls os.Exit.

func (*Logger) Fatalf

func (l *Logger) Fatalf(template string, args ...interface{})

Fatalf uses fmt.Sprintf to log a templated message, then calls os.Exit.

func (*Logger) Fatalln

func (l *Logger) Fatalln(args ...interface{})

func (*Logger) Fatalw

func (l *Logger) Fatalw(msg string, fields ...zap.Field)

Fatal logs a message at FatalLevel. The message includes any fields passed at the log site, as well as any fields accumulated on the logger.

The logger then calls os.Exit(1), even if logging at FatalLevel is disabled.

func (*Logger) Handle added in v1.4.0

func (l *Logger) Handle(ctx context.Context, record slog.Record) error

func (*Logger) Info

func (l *Logger) Info(args ...interface{})

Info uses fmt.Sprint to construct and log a message.

func (*Logger) Infof

func (l *Logger) Infof(template string, args ...interface{})

Infof uses fmt.Sprintf to log a templated message.

func (*Logger) Infoln

func (l *Logger) Infoln(args ...interface{})

兼容grpclog

func (*Logger) Infow

func (l *Logger) Infow(msg string, fields ...zap.Field)

Info logs a message at InfoLevel. The message includes any fields passed at the log site, as well as any fields accumulated on the logger.

func (*Logger) Named

func (l *Logger) Named(name string) *Logger

Named adds a sub-scope to the logger's name. See Logger.Named for details.

func (*Logger) NewSLogger added in v1.4.0

func (l *Logger) NewSLogger() *slog.Logger

func (*Logger) Panic

func (l *Logger) Panic(args ...interface{})

Panic uses fmt.Sprint to construct and log a message, then panics.

func (*Logger) Panicf

func (l *Logger) Panicf(template string, args ...interface{})

Panicf uses fmt.Sprintf to log a templated message, then panics.

func (*Logger) Panicw

func (l *Logger) Panicw(msg string, fields ...zap.Field)

Panic logs a message at PanicLevel. The message includes any fields passed at the log site, as well as any fields accumulated on the logger.

The logger then panics, even if logging at PanicLevel is disabled.

func (*Logger) Print

func (l *Logger) Print(args ...interface{})

兼容gormv1

func (*Logger) Printf

func (l *Logger) Printf(template string, args ...interface{})

func (*Logger) Println

func (l *Logger) Println(args ...interface{})

func (*Logger) Sugar

func (l *Logger) Sugar() *zap.SugaredLogger

Sugar warp the zap Sugar.

func (*Logger) V

func (l *Logger) V(level int) bool

grpclog

func (*Logger) Warn

func (l *Logger) Warn(args ...interface{})

Warn uses fmt.Sprint to construct and log a message.

func (*Logger) Warnf

func (l *Logger) Warnf(template string, args ...interface{})

Warnf uses fmt.Sprintf to log a templated message.

func (*Logger) Warning

func (l *Logger) Warning(args ...interface{})

func (*Logger) Warningf

func (l *Logger) Warningf(template string, args ...interface{})

func (*Logger) Warningln

func (l *Logger) Warningln(args ...interface{})

func (*Logger) Warnw

func (l *Logger) Warnw(msg string, fields ...zap.Field)

Warn logs a message at WarnLevel. The message includes any fields passed at the log site, as well as any fields accumulated on the logger.

func (*Logger) With

func (l *Logger) With(fields ...zap.Field) *Logger

With warp the zap With. Fields added to the child don't affect the parent, and vice versa.

func (*Logger) WithAttrs added in v1.4.0

func (l *Logger) WithAttrs(attrs []slog.Attr) slog.Handler

func (*Logger) WithGroup added in v1.4.0

func (l *Logger) WithGroup(name string) slog.Handler

func (*Logger) WithOptions

func (l *Logger) WithOptions(opts ...zap.Option) *Logger

WithOptions warp the zap WithOptions, applies the supplied Options, and returns the resulting Logger. It's safe to use concurrently.

func (*Logger) ZapLogger

func (l *Logger) ZapLogger() *zap.Logger

Sugar warp the zap Sugar.

type OutPutPaths

type OutPutPaths struct {
	Console []string `json:"console,omitempty"`
	Json    []string `json:"json,omitempty"`
}

type StdErrLevel

type StdErrLevel zapcore.Level

func (StdErrLevel) Enabled

func (l StdErrLevel) Enabled(lvl zapcore.Level) bool

type StdLogInterface

type StdLogInterface interface {
	Println(args ...interface{})
}

type StdOutLevel

type StdOutLevel zapcore.Level

func (StdOutLevel) Enabled

func (l StdOutLevel) Enabled(lvl zapcore.Level) bool

type ZipConfig

type ZipConfig = zap.Config

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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