logger

package module
v3.0.2 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2024 License: MIT Imports: 13 Imported by: 0

README

logger

Packaging the slog Logger

使用说明

必须首先使用 InitLoggerWithConfig or InitLoggerWithLevel or InitLogger 初始化logger模块

logger.LoggerByDay 按日分割log打印

logger.GetLogger(name string) 生成or获取一个name命名的logger

Documentation

Overview

Package logger 封装的go.uber.org/zap包 方便日志管理和使用

Index

Constants

This section is empty.

Variables

View Source
var (
	Empty = &emptyLogger{}
)

Empty empty logger.

Functions

func FlushAndCloseLogger

func FlushAndCloseLogger(name string) error

FlushAndCloseLogger flush and close logger.

func GetGID

func GetGID() uint64

func InitLoggerWithConfig

func InitLoggerWithConfig(cfg Config, location *time.Location, gid *sync.Map) error

InitLoggerWithConfig 使用config初始化logger.

func InitLoggerWithLevel

func InitLoggerWithLevel(path string, logLevel LevelString, location *time.Location, gid *sync.Map) error

InitLoggerWithLevel 使用String格式的level初始化logger. path 输出路径, 默认当前路径. logLevel 日志级别: debug,info,warn. location 日志文件名所属时区.

func ToEarlyMorningTimeDuration

func ToEarlyMorningTimeDuration(now time.Time) time.Duration

ToEarlyMorningTimeDuration will 计算当前到第二日凌晨的时间.

Types

type Config

type Config struct {
	Loglevel LevelString
	StdOut   bool // 如果true,则 path、maxsize失效
	Path     string
	// MaxSize 单文件最大存储,单位MB
	MaxSize int

	// 最多备份数
	MaxBackups int
	// 备份最大保留天数
	MaxAge int
	// 是否压缩备份
	Compress bool

	// 是否添加调用函数信息
	AddSource bool
}

Config logger config.

type GIDContext

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

func (*GIDContext) Debugw

func (g *GIDContext) Debugw() func(msg string, args ...any)

func (*GIDContext) Errorw

func (g *GIDContext) Errorw() func(msg string, args ...any)

func (*GIDContext) Infow

func (g *GIDContext) Infow() func(msg string, args ...any)

func (*GIDContext) Warnw

func (g *GIDContext) Warnw() func(msg string, args ...any)

type LevelString

type LevelString string

LevelString 字符串格式的Level.

const (
	// DebugStringLevel debug.
	DebugStringLevel LevelString = "debug"
	// InfoStringLevel info.
	InfoStringLevel LevelString = "info"
	// WarnStringLevel warn.
	WarnStringLevel LevelString = "warn"
	// ErrorStringLevel error.
	ErrorStringLevel LevelString = "error"
)

type Logger

type Logger interface {
	Debugw() func(msg string, kv ...any)
	Infow() func(msg string, kv ...any)
	Warnw() func(msg string, kv ...any)
	Errorw() func(msg string, kv ...any)
}

Logger Logger.

var (

	// LoggerByDay 按照天来划分的logger.
	LoggerByDay Logger
)

func GetLogger

func GetLogger(name string) Logger

GetLogger to get logger.

func GetSugarLogger

func GetSugarLogger(name string) Logger

GetSugarLogger to get SugaredLogger.

Jump to

Keyboard shortcuts

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