在项目中引入了 lumberjack 日志库,新增日志轮转功能,优化日志管理。更新 go.mod 和 go.sum 文件以包含新的依赖项,同时在 otelTrace 初始化中配置日志记录器,确保日志文件按大小和时间进行轮转。

This commit is contained in:
danial
2025-05-09 00:02:42 +08:00
parent afb3ccb99a
commit 5a2e147aba
3 changed files with 25 additions and 1 deletions

1
go.mod
View File

@@ -56,6 +56,7 @@ require (
github.com/mattn/go-sqlite3 v2.0.3+incompatible // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
github.com/natefinch/lumberjack v2.0.0+incompatible // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/prometheus/client_golang v1.20.5 // indirect
github.com/prometheus/client_model v0.6.1 // indirect

2
go.sum
View File

@@ -82,6 +82,8 @@ github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 h1:RWengNIwukTxcDr9
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826/go.mod h1:TaXosZuwdSHYgviHp1DAtfrULt5eUgsSMsZf+YrPgl8=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
github.com/natefinch/lumberjack v2.0.0+incompatible h1:4QJd3OLAMgj7ph+yZTuX13Ld4UpgHp07nNdFX7mqFfM=
github.com/natefinch/lumberjack v2.0.0+incompatible/go.mod h1:Wi9p2TTF5DG5oU+6YfsmYQpsTIOm0B1VNzQg9Mw6nPk=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=

View File

@@ -7,6 +7,7 @@ import (
"os"
"github.com/beego/beego/v2/core/config/env"
"github.com/natefinch/lumberjack"
"github.com/beego/beego/v2/server/web"
beecontext "github.com/beego/beego/v2/server/web/context"
@@ -158,13 +159,23 @@ func InitTracer() (func(context.Context) error, func(context.Context) error, fun
EncodeCaller: zapcore.ShortCallerEncoder, // 短路径编码器
}
// 创建核心
lumberjacklogger := &lumberjack.Logger{
Filename: "./logs/log-rotate-test.log",
MaxSize: 10, //MB
MaxBackups: 20,
MaxAge: 15, //days
Compress: true, // disabled by default
}
defer lumberjacklogger.Close()
// 日志需要保存在本地,并且每日更新
core := zapcore.NewTee(
otelzap.NewCore(serviceName, otelzap.WithLoggerProvider(loggerProvider)),
zapcore.NewCore(
zapcore.NewConsoleEncoder(encoderConfig),
zapcore.NewMultiWriteSyncer(
zapcore.AddSync(os.Stdout),
zapcore.AddSync(lumberjacklogger),
),
zap.InfoLevel,
),
@@ -273,12 +284,22 @@ func init() {
EncodeDuration: zapcore.SecondsDurationEncoder,
EncodeCaller: zapcore.ShortCallerEncoder, // 短路径编码器
}
lumberjacklogger := &lumberjack.Logger{
Filename: "./logs/log-rotate-test.log",
MaxSize: 10, //MB
MaxBackups: 20,
MaxAge: 15, //days
Compress: true, // disabled by default
}
defer lumberjacklogger.Close()
// 创建核心
core := zapcore.NewTee(
zapcore.NewCore(
zapcore.NewConsoleEncoder(encoderConfig),
zapcore.NewMultiWriteSyncer(
zapcore.AddSync(os.Stdout),
zapcore.AddSync(lumberjacklogger),
),
zap.InfoLevel,
),