Skip to content

API 参考 ​

核心功能 ​

初始化 ​

go
func Init(mode string)

初始化日志系统,其中mode参数可以是:

  • gin.DebugMode: 调试模式,输出所有日志级别
  • gin.ReleaseMode: 发布模式,仅输出Info级别及以上日志

获取实例 ​

go
func GetLogger() *zap.SugaredLogger

该方法通常用于,提供给用户一个方案,使得用户可以自由一个新的 logger 函数。

通常在封装函数内调用 logger 时,输出的调用栈是封装内 logger 的行号

go
logger.GetLogger().WithOptions(zap.AddCallerSkip(1)).Errorln(err)

使用 WithOptions(zap.AddCallerSkip(1)) 可以使得输出的调用栈是调用该封装函数的文件和行号。

中间件功能 ​

AuditMiddleware ​

go
func AuditMiddleware(logMapHandler func(*gin.Context, map[string]string)) gin.HandlerFunc

创建审计中间件,自动记录 HTTP 请求的详细信息。

参数:

  • logMapHandler: 可选的自定义日志处理器函数

NewSessionLogger ​

go
func NewSessionLogger(c *gin.Context) *SessionLogger

创建会话日志实例,用于在单个请求上下文中记录日志。

参数:

  • c: Gin 上下文

返回:

  • *SessionLogger: 会话日志实例

SLS 集成 ​

InitSLS ​

go
func InitSLS(ctx context.Context)

初始化 SLS (Simple Log Service) 集成。

参数:

  • ctx: 上下文,用于控制生产者生命周期

NewLogBuffer ​

go
func NewLogBuffer() *LogBuffer

创建新的日志缓冲区实例。详见 LogBuffer 文档。

GORM 集成 ​

NewGormLogger ​

go
func NewGormLogger(writer gormlogger.Writer, config gormlogger.Config) *GormLogger

创建 GORM 日志器实例。

参数:

  • writer: 日志输出目标
  • config: 日志配置

DefaultGormLogger ​

go
var DefaultGormLogger *GormLogger

默认的 GORM 日志器实例,包含合理的默认配置。

同步缓冲区 ​

go
func Sync()

同步并刷新所有缓冲的日志条目。在程序退出前调用可确保所有日志被写入。

Debug ​

go
func Debug(args ...any)

Debugf ​

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

Info ​

go
func Info(args ...any)

Infof ​

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

Warn ​

go
func Warn(args ...any)

Warnf ​

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

Error ​

go
func Error(args ...any)

Errorf ​

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

Fatal ​

go
func Fatal(args ...any)

Fatalf ​

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

Panic ​

go
func Panic(args ...any)

Panicf ​

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

DPanic ​

go
func DPanic(args ...any)

DPanicf ​

go
func DPanicf(format string, args ...any)