add
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
package logger
|
package logger
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"log"
|
||||||
"os"
|
"os"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
@@ -10,6 +11,19 @@ import (
|
|||||||
"gopkg.in/natefinch/lumberjack.v2"
|
"gopkg.in/natefinch/lumberjack.v2"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var shanghaiLoc *time.Location
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
var err error
|
||||||
|
// 提前初始化时区并处理错误
|
||||||
|
shanghaiLoc, err = time.LoadLocation("Asia/Shanghai")
|
||||||
|
if err != nil {
|
||||||
|
// 若加载失败,使用UTC作为 fallback
|
||||||
|
shanghaiLoc = time.UTC
|
||||||
|
log.Printf("警告:加载Asia/Shanghai时区失败,将使用UTC时区: %v", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Init 初始化日志(依赖配置文件已加载)
|
// Init 初始化日志(依赖配置文件已加载)
|
||||||
func Init() {
|
func Init() {
|
||||||
// 日志级别转换
|
// 日志级别转换
|
||||||
@@ -60,11 +74,10 @@ func Init() {
|
|||||||
zap.L().Info("✅ 日志初始化成功", zap.String("level", level.String()))
|
zap.L().Info("✅ 日志初始化成功", zap.String("level", level.String()))
|
||||||
}
|
}
|
||||||
|
|
||||||
// customTimeEncoder 自定义时间格式(强制东八区)
|
// customTimeEncoder 自定义时间格式(强制东八区,若加载失败则使用UTC)
|
||||||
func customTimeEncoder(t time.Time, enc zapcore.PrimitiveArrayEncoder) {
|
func customTimeEncoder(t time.Time, enc zapcore.PrimitiveArrayEncoder) {
|
||||||
// 转换为东八区(UTC+8)时间
|
// 使用提前初始化好的时区,避免每次调用都加载
|
||||||
loc, _ := time.LoadLocation("Asia/Shanghai")
|
beijingTime := t.In(shanghaiLoc)
|
||||||
beijingTime := t.In(loc)
|
|
||||||
// 格式化输出
|
// 格式化输出
|
||||||
enc.AppendString(beijingTime.Format("2006-01-02 15:04:05.000"))
|
enc.AppendString(beijingTime.Format("2006-01-02 15:04:05.000"))
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user