feat(lyra)!: 添加结构化日志与请求追踪
- 配置 slog JSON 输出和日志级别 - 添加请求 ID、访问日志及上下文日志工具 - 拆分启动初始化并统一启动失败处理 BREAKING CHANGE: 配置文件必须提供 log.level,缺失或非法将导致启动失败
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
package util
|
||||
|
||||
import (
|
||||
"context"
|
||||
"log/slog"
|
||||
"lyra/internal/pkg/constant"
|
||||
)
|
||||
|
||||
func Logger(ctx context.Context) *slog.Logger {
|
||||
logger := slog.Default()
|
||||
|
||||
if requestID, ok := ctx.Value(constant.RequestIDKey).(string); ok {
|
||||
logger = logger.With(string(constant.RequestIDKey), requestID)
|
||||
}
|
||||
|
||||
return logger
|
||||
}
|
||||
Reference in New Issue
Block a user