1 Star 0 Fork 0

igo/pkg

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
logger.go 677 Bytes
一键复制 编辑 原始数据 按行查看 历史
layte.xiao 提交于 2025-05-29 23:13 +08:00 . 优化日志
package xlog
import (
"bytes"
"context"
"log/slog"
)
type Logger struct {
logger *slog.Logger
config *Config
}
func NewLogger(config *Config) (*Logger, error) {
if config == nil {
config = DefaultConfig()
}
config.check()
handler, err := NewMultiHandler(config)
if err != nil {
return nil, err
}
logger := slog.New(handler)
return &Logger{logger: logger, config: config}, nil
}
func (l *Logger) Logger() *slog.Logger {
return l.logger
}
// Write 写入,用于log.New() log.Logger的实现
func (l *Logger) Write(p []byte) (int, error) {
p = bytes.TrimSpace(p)
l.logger.LogAttrs(context.Background(), slog.LevelInfo, string(p))
return len(p), nil
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/igolang/pkg.git
git@gitee.com:igolang/pkg.git
igolang
pkg
pkg
v1.29.8

搜索帮助