tlog

package
v0.7.0 Latest Latest
Warning

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

Go to latest
Published: Sep 16, 2024 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Description: 日志模块

Index

Constants

View Source
const (
	// DebugLevel debug级别
	DebugLevel = zapcore.DebugLevel
	// InfoLevel info级别
	InfoLevel = zapcore.InfoLevel
	// WarnLevel warn级别
	WarnLevel = zapcore.WarnLevel
	// ErrorLevel error级别
	ErrorLevel = zapcore.ErrorLevel
	// DPanicLevel dpanic级别
	DPanicLevel = zapcore.DPanicLevel
	// PanicLevel panic级别
	PanicLevel = zapcore.PanicLevel
	// FatalLevel fatal级别
	FatalLevel = zapcore.FatalLevel
)

Variables

This section is empty.

Functions

func Any

func Any(key string, value interface{}) zapcore.Field

Any 生成一个Any类型的Field。

Params:

  • key: 字段名
  • value: 任意类型的值

func DPanic added in v0.5.0

func DPanic(loggerName string, msg string, fields ...Field)

DPanic 记录一个DPanic级别的日志。

Params:

  • loggerName: 日志对象名称。
  • msg: 日志内容。
  • fields: Field类型的可变参数。

Example:

tlog.DPanic("dpanic",  tlog.String("rquestTime", t.Format("2006-01-02 15:04:05")))

func Debug added in v0.5.0

func Debug(loggerName string, msg string, fields ...Field)

Debug 记录一个Debug级别的日志。

Params:

  • loggerName: 日志对象名称。
  • msg: 日志内容。
  • fields: Field类型的可变参数。

Example:

tlog.Debug("debug",  tlog.String("rquestTime", t.Format("2006-01-02 15:04:05")))

func Error added in v0.5.0

func Error(loggerName string, msg string, fields ...Field)

Error 记录一个Error级别的日志。

Params:

  • loggerName: 日志对象名称。
  • msg: 日志内容。
  • fields: Field类型的可变参数。

Example:

tlog.Error("error",  tlog.String("rquestTime", t.Format("2006-01-02 15:04:05")))

func Fatal added in v0.5.0

func Fatal(loggerName string, msg string, fields ...Field)

Fatal 记录一个Fatal级别的日志。

Params:

  • loggerName: 日志对象名称。
  • msg: 日志内容。
  • fields: Field类型的可变参数。

Example:

tlog.Fatal("fatal",  tlog.String("rquestTime", t.Format("2006-01-02 15:04:05")))

func Info added in v0.5.0

func Info(loggerName string, msg string, fields ...Field)

Info 记录一个Info级别的日志。

Params:

  • loggerName: 日志对象名称。
  • msg: 日志内容。
  • fields: Field类型的可变参数。

Example:

tlog.Info("info",  tlog.String("rquestTime", t.Format("2006-01-02 15:04:05")))

func Panic added in v0.5.0

func Panic(loggerName string, msg string, fields ...Field)

Panic 记录一个Panic级别的日志。

Params:

  • loggerName: 日志对象名称。
  • msg: 日志内容。
  • fields: Field类型的可变参数。

Example:

tlog.Panic("panic",  tlog.String("rquestTime", t.Format("2006-01-02 15:04:05")))

func Print

func Print(msg ...any)

Print 打印输出日志。使用的loggerName为print,print的日志级别为Debug,默认只输出到控制台。

如果想要不显示Caller信息,可以使用tlog.GetLogger("print").SetCaller(false)。

如果需要记录到文件,可以使用tlog.GetLogger("print").SetOutputPath("log/print.log")。

Params:

  • msg: 日志内容
  • fields: Field类型的可变参数

Example:

tlog.Print("api",
	tlog.Int("code", 321321),
)

func Printf

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

Printf 格式化输出日志。使用的loggerName为print,print的日志级别为Debug,默认只输出到控制台。

如果想要不显示Caller信息,可以使用tlog.GetLogger("print").SetCaller(false)。

如果需要记录到文件,可以使用tlog.GetLogger("print").SetOutputPath("log/print.log")。

Params:

  • format: 格式化字符串
  • args: 格式化参数

Example:

tlog.Printf("format: %s", "test")

func Warn added in v0.5.0

func Warn(loggerName string, msg string, fields ...Field)

Warn 记录一个Warn级别的日志。

Params:

  • loggerName: 日志对象名称。
  • msg: 日志内容。
  • fields: Field类型的可变参数。

Example:

tlog.Warn("warn",  tlog.String("rquestTime", t.Format("2006-01-02 15:04:05")))

Types

type Encoder added in v0.5.0

type Encoder = zapcore.Encoder

Encoder 日志编码格式

type Field

type Field = zapcore.Field

Field 日志字段

func Duration

func Duration(key string, val time.Duration) Field

Duration 生成一个Duration类型的Field。

Params:

  • key: 字段名
  • val: time.Duration值

func Int

func Int(key string, val int) Field

Int 生成一个Int类型的Field。

Params:

  • key: 字段名
  • val: int值

func Int64

func Int64(key string, val int64) Field

Int64 生成一个Int64类型的Field。

Params:

  • key: 字段名
  • val: int64值

func Reflect

func Reflect(key string, val interface{}) Field

Reflect 生成一个Reflect类型的Field。

func String

func String(key string, val string) Field

String 生成一个字符串类型的Field。

Params:

  • key: 字段名
  • val: 字符串值

func Strings

func Strings(key string, ss []string) Field

Strings 生成一个字符串切片类型的Field。

Params:

  • key: 字段名
  • ss: 字符串切片

func Time

func Time(key string, val time.Time) Field

Time 生成一个Time类型的Field。

Params:

  • key: 字段名
  • val: time.Time值

type Level added in v0.5.0

type Level = zapcore.Level

Level 日志级别

type Logger

type Logger struct {
	// contains filtered or unexported fields
}

Logger 日志对象

func Get added in v0.5.0

func Get(loggerName string) *Logger

Get 获取日志对象,如果获取的对象不存在则新建一个日志对象并返回。

创建的日志对象默认只输出到控制条,日志级别为Debug。并且默认关闭Caller信息,如果有需要可以通过SetCaller(true)开启。

Params:

  • loggerName: 日志对象名称,用于匹配日志

Returns:

0: 日志对象。

Example:

logger := tlog.Get("api")

func (*Logger) DPanic added in v0.5.0

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

DPanic 记录一个DPanic级别的日志。

Params:

  • msg: 日志内容。
  • fields: Field类型的可变参数。

func (*Logger) Debug added in v0.5.0

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

Debug 记录一个Debug级别的日志。

Params:

  • msg: 日志内容。
  • fields: Field类型的可变参数。

func (*Logger) Error added in v0.5.0

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

Error 记录一个Error级别的日志。

Params:

  • msg: 日志内容。
  • fields: Field类型的可变参数。

func (*Logger) Fatal added in v0.5.0

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

Fatal 记录一个Fatal级别的日志。

Params:

  • msg: 日志内容。
  • fields: Field类型的可变参数。

func (*Logger) Info added in v0.5.0

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

Info 记录一个Info级别的日志。

Params:

  • msg: 日志内容。
  • fields: Field类型的可变参数。

func (*Logger) Panic added in v0.5.0

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

Panic 记录一个Panic级别的日志。

Params:

  • msg: 日志内容。
  • fields: Field类型的可变参数。

func (*Logger) SetCaller added in v0.5.0

func (l *Logger) SetCaller(hasCaller bool) *Logger

SetCaller 设置是否输出Caller信息,保留除输出Caller信息外的其他设置。

Params:

  • hasCaller: 是否输出Caller信息

Returns:

0: 日志对象。

Example:

logger := tlog.GetLogger("api").SetCaller(false)

func (*Logger) SetEncoder added in v0.5.0

func (l *Logger) SetEncoder(consoleEncoder Encoder, fileEncoder Encoder) *Logger

SetEncoder 设置输出格式,保留除输出格式外的其他设置。

Params:

  • consoleEncoder: 控制台输出格式
  • fileEncoder: 文件输出格式

Returns:

0: 日志对象。

Example:

 consoleEncoder := zap.NewProductionEncoderConfig()
 consoleEncoder.EncodeTime = func(t time.Time, enc zapcore.PrimitiveArrayEncoder) {
		enc.AppendString("[\033[36m" + t.Format("2006-01-02 15:04:05.000") + "\033[0m]")
 }
 fileEncoder := zap.NewProductionEncoderConfig()
 fileEncoder.EncodeTime = zapcore.TimeEncoderOfLayout("2006-01-02 15:04:05.000")
 logger := tlog.GetLogger("api").SetEncoder(consoleEncoder, fileEncoder)

func (*Logger) SetLevel added in v0.5.0

func (l *Logger) SetLevel(level Level) *Logger

SetLevel 设置日志级别,保留除日志级别外的其他设置。

Params:

  • level: 日志级别

Returns:

0: 日志对象。

Example:

logger := tlog.GetLogger("api").SetLevel(tlog.InfoLevel)

func (*Logger) SetOutputPath added in v0.5.0

func (l *Logger) SetOutputPath(path string, maxSize int, maxBackups int, maxAge int) *Logger

SetOutputPath 设置日志输出路径,保留除输出路径外的其他设置。

Params:

  • path: 日志输出路径
  • maxSize: 日志文件大小,单位MB。如果文件超过这个大小会被切割。默认100MB。
  • maxBackups: 需要保留的旧日志文件数,默认保留所有旧日志文件,但是maxAge参数还是会导致文件被删除。
  • maxAge: 日志文件最大保存天数。

Returns:

0: 日志对象。

Example:

logger := tlog.GetLogger("api").SetOutputPath("log/api/api.log")

func (*Logger) Warn added in v0.5.0

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

Warn 记录一个Warn级别的日志。

Params:

  • msg: 日志内容。
  • fields: Field类型的可变参数。

type WriteSyncer added in v0.5.0

type WriteSyncer = zapcore.WriteSyncer

WriteSyncer 日志输出路径

Jump to

Keyboard shortcuts

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