- 新增 domain 层:model、provider、route、stats 实体 - 新增 service 层:models、providers、routing、stats 业务逻辑 - 新增 repository 层:models、providers、stats 数据访问 - 新增 pkg 工具包:errors、logger、validator - 新增中间件:CORS、logging、recovery、request ID - 新增数据库迁移:初始 schema 和索引 - 新增单元测试和集成测试 - 新增规范文档:config-management、database-migration、error-handling、layered-architecture、middleware-system、request-validation、structured-logging、test-coverage - 移除 config 子包和 model_router(已迁移至分层架构)
18 lines
524 B
Go
18 lines
524 B
Go
package logger
|
|
|
|
import "go.uber.org/zap"
|
|
|
|
// WithRequestID 向 logger 添加 request_id 字段
|
|
func WithRequestID(logger *zap.Logger, requestID string) *zap.Logger {
|
|
return logger.With(zap.String("request_id", requestID))
|
|
}
|
|
|
|
// WithContext 向 logger 添加多个自定义字段
|
|
func WithContext(logger *zap.Logger, fields map[string]interface{}) *zap.Logger {
|
|
zapFields := make([]zap.Field, 0, len(fields))
|
|
for k, v := range fields {
|
|
zapFields = append(zapFields, zap.Any(k, v))
|
|
}
|
|
return logger.With(zapFields...)
|
|
}
|