0908
This commit is contained in:
27
aio-mcp/internal/logging/logging.go
Normal file
27
aio-mcp/internal/logging/logging.go
Normal file
@@ -0,0 +1,27 @@
|
||||
// Package logging 负责 aio-mcp 的全局日志初始化。
|
||||
package logging
|
||||
|
||||
import (
|
||||
"log/slog"
|
||||
"os"
|
||||
)
|
||||
|
||||
// Setup 初始化全局 slog 默认 logger。
|
||||
//
|
||||
// 日志固定输出到 stderr:stdio 模式下 stdout 是 MCP 协议通道,
|
||||
// 任何日志混入都会破坏 JSON-RPC 报文。业务代码同样禁止打印到 stdout。
|
||||
func Setup(level string) {
|
||||
var lvl slog.Level
|
||||
switch level {
|
||||
case "debug":
|
||||
lvl = slog.LevelDebug
|
||||
case "warn":
|
||||
lvl = slog.LevelWarn
|
||||
case "error":
|
||||
lvl = slog.LevelError
|
||||
default:
|
||||
lvl = slog.LevelInfo
|
||||
}
|
||||
|
||||
slog.SetDefault(slog.New(slog.NewTextHandler(os.Stderr, &slog.HandlerOptions{Level: lvl})))
|
||||
}
|
||||
Reference in New Issue
Block a user