74 lines
1.7 KiB
Go
74 lines
1.7 KiB
Go
package log
|
|
|
|
import (
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
// GetLogger 获取原生 zap logger
|
|
func GetLogger() *zap.Logger {
|
|
return logger
|
|
}
|
|
|
|
// Sync 刷新缓冲区
|
|
func Sync() {
|
|
_ = logger.Sync()
|
|
}
|
|
|
|
// ============================================================================
|
|
// 结构化日志 (Structured Logging) - 推荐高性能场景使用
|
|
// 用法: log.Info("user login", zap.String("username", "admin"))
|
|
// ============================================================================
|
|
|
|
func Debug(msg string, fields ...zap.Field) {
|
|
logger.Debug(msg, fields...)
|
|
}
|
|
|
|
func Info(msg string, fields ...zap.Field) {
|
|
logger.Info(msg, fields...)
|
|
}
|
|
|
|
func Warn(msg string, fields ...zap.Field) {
|
|
logger.Warn(msg, fields...)
|
|
}
|
|
|
|
func Error(msg string, fields ...zap.Field) {
|
|
logger.Error(msg, fields...)
|
|
}
|
|
|
|
func Fatal(msg string, fields ...zap.Field) {
|
|
logger.Fatal(msg, fields...)
|
|
}
|
|
|
|
func Panic(msg string, fields ...zap.Field) {
|
|
logger.Panic(msg, fields...)
|
|
}
|
|
|
|
// ============================================================================
|
|
// 格式化日志 (Sugared Logging) - 方便使用,类似 fmt.Printf
|
|
// 用法: log.Infof("user %s login failed, count: %d", "admin", 3)
|
|
// ============================================================================
|
|
|
|
func Debugf(template string, args ...interface{}) {
|
|
sugar.Debugf(template, args...)
|
|
}
|
|
|
|
func Infof(template string, args ...interface{}) {
|
|
sugar.Infof(template, args...)
|
|
}
|
|
|
|
func Warnf(template string, args ...interface{}) {
|
|
sugar.Warnf(template, args...)
|
|
}
|
|
|
|
func Errorf(template string, args ...interface{}) {
|
|
sugar.Errorf(template, args...)
|
|
}
|
|
|
|
func Fatalf(template string, args ...interface{}) {
|
|
sugar.Fatalf(template, args...)
|
|
}
|
|
|
|
func Panicf(template string, args ...interface{}) {
|
|
sugar.Panicf(template, args...)
|
|
}
|