topfans/backend/pkg/logger/测试结果.md
2026-04-07 22:29:48 +08:00

2.5 KiB
Raw Blame History

Logger测试结果

测试通过

1. 开发环境测试

日志输出示例(彩色控制台):

2025-12-31T13:44:33.524+0800	DEBUG	logger/test_main.go:31	This is a debug message	{"service": "user-service"}
2025-12-31T13:44:33.524+0800	INFO	logger/test_main.go:32	This is an info message	{"service": "user-service"}
2025-12-31T13:44:33.524+0800	WARN	logger/test_main.go:33	This is a warn message	{"service": "user-service"}
2025-12-31T13:44:33.525+0800	ERROR	logger/test_main.go:34	This is an error message	{"service": "user-service"}

特点

  • 彩色输出DEBUG=紫色INFO=蓝色WARN=黄色ERROR=红色)
  • 包含时间戳、级别、文件名和行号
  • 自动添加 service 字段

2. 结构化日志测试

2025-12-31T13:44:33.525+0800	INFO	logger/test_main.go:37	User registered	{"service": "user-service", "mobile": "13800138000", "user_id": 123, "star_id": 456}

特点

  • 支持结构化字段mobile, user_id, star_id
  • 自动添加service字段

3. 生产环境测试JSON格式

日志输出示例:

{"level":"info","ts":1767159873.525571,"caller":"logger/test_main.go:70","msg":"User login successful","service":"user-service","user_id":123,"star_id":456,"mobile":"13800138000"}
{"level":"error","ts":1767159873.525675,"caller":"logger/test_main.go:76","msg":"Database connection failed","service":"user-service","error":"connection timeout","host":"localhost","port":5432,"stacktrace":"..."}

特点

  • JSON格式便于日志收集系统解析
  • 包含所有必要字段
  • 错误日志包含堆栈跟踪

功能验证

初始化成功logger可以正常初始化
日志级别Debug、Info、Warn、Error 都正常工作
结构化日志:支持添加自定义字段
服务名标识每条日志都包含service字段
开发/生产环境:不同环境使用不同格式
Sugar APISugar API正常工作

使用方式

在Service中使用

import (
	"github.com/topfans/backend/pkg/logger"
	"go.uber.org/zap"
)

// 使用Sugar API简单
logger.Sugar.Infof("User registered: mobile=%s", mobile)

// 使用结构化日志(推荐,性能更好)
logger.Logger.Info("User registered",
	zap.String("mobile", mobile),
	zap.Int64("user_id", userID),
)

下一步

Logger工具包已就绪
测试通过
可以开始开发Service层参考开发功能顺序文档