log

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jun 2, 2025 License: MIT Imports: 13 Imported by: 0

Documentation

Overview

Package log is a log package used by coden project.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Debugf

func Debugf(format string, args ...any)

func Debugw

func Debugw(msg string, keyvals ...any)

func Errorf

func Errorf(format string, args ...any)

func Errorw

func Errorw(err error, msg string, keyvals ...any)

func Fatalf

func Fatalf(format string, args ...any)

func Fatalw

func Fatalw(msg string, keyvals ...any)

func Infof

func Infof(format string, args ...any)

func Infow

func Infow(msg string, keyvals ...any)

func Init

func Init(opts *Options, options ...Option)

Init 使用指定的选项初始化 Logger.

func NewLogger

func NewLogger(opts *Options, options ...Option) *zapLogger

NewLogger 根据传入的 opts 创建 Logger.

func Panicf

func Panicf(format string, args ...any)

func Panicw

func Panicw(msg string, keyvals ...any)

func Sync

func Sync()

Sync 刷新日志.

func Warnf

func Warnf(format string, args ...any)

func Warnw

func Warnw(msg string, keyvals ...any)

Types

type ContextExtractors

type ContextExtractors map[string]func(context.Context) string

type Field

type Field = zapcore.Field

type KratosLogger

type KratosLogger interface {
	// Log implements is used to github.com/go-kratos/kratos/v2/log.Logger interface.
	Log(level krtlog.Level, keyvals ...any) error
}

type Logger

type Logger interface {
	Debugf(format string, args ...any)
	Debugw(msg string, keyvals ...any)
	Infof(format string, args ...any)
	Infow(msg string, keyvals ...any)
	Warnf(format string, args ...any)
	Warnw(msg string, keyvals ...any)
	Errorf(format string, args ...any)
	Errorw(err error, msg string, keyvals ...any)
	Panicf(format string, args ...any)
	Panicw(msg string, keyvals ...any)
	Fatalf(format string, args ...any)
	Fatalw(msg string, keyvals ...any)
	W(ctx context.Context) Logger
	AddCallerSkip(skip int) Logger
	Sync()

	// integrate other loggers
	krtlog.Logger
	gormlogger.Interface
}

Logger 定义了日志接口. 该接口只包含了支持的日志记录方法.

func AddCallerSkip

func AddCallerSkip(skip int) Logger

func Default

func Default() Logger

Default 返回全局 Logger.

func W

func W(ctx context.Context) Logger

W 解析传入的 context,尝试提取关注的键值,并添加到 zap.Logger 结构化日志中.

type Option

type Option func(*zapLogger)

Option 是一个函数类型,用于配置 zapLogger 的选项

func WithContextExtractor

func WithContextExtractor(contextExtractors ContextExtractors) Option

WithContextExtractor 添加自定义的 context 提取逻辑

type Options

type Options struct {
	// DisableCaller specifies whether to include caller information in the log.
	DisableCaller bool `json:"disable-caller,omitempty" mapstructure:"disable-caller"`
	// DisableStacktrace specifies whether to record a stack trace for all messages at or above panic level.
	DisableStacktrace bool `json:"disable-stacktrace,omitempty" mapstructure:"disable-stacktrace"`
	// EnableColor specifies whether to output colored logs.
	EnableColor bool `json:"enable-color"       mapstructure:"enable-color"`
	// Level specifies the minimum log level. Valid values are: debug, info, warn, error, dpanic, panic, and fatal.
	Level string `json:"level,omitempty" mapstructure:"level"`
	// Format specifies the log output format. Valid values are: console and json.
	Format string `json:"format,omitempty" mapstructure:"format"`
	// OutputPaths specifies the output paths for the logs.
	OutputPaths []string `json:"output-paths,omitempty" mapstructure:"output-paths"`
}

Options contains configuration options for logging.

func NewOptions

func NewOptions() *Options

NewOptions creates a new Options object with default values.

func (*Options) AddFlags

func (o *Options) AddFlags(fs *pflag.FlagSet)

AddFlags adds command line flags for the configuration.

func (*Options) Validate

func (o *Options) Validate() []error

Validate verifies flags passed to LogsOptions.

Jump to

Keyboard shortcuts

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