Skip to content

Commit 4e2c196

Browse files
authored
chore: update Go version to 1.25.6 and clean up comments in logs.go
1 parent ff715ae commit 4e2c196

File tree

3 files changed

+18
-39
lines changed

3 files changed

+18
-39
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,4 +89,4 @@ stdLogger.Printf("Formatted %s", "message")
8989
## License
9090

9191
Copyright (c) 2025, NodePassProject. Licensed under the BSD 3-Clause License.
92-
See the [LICENSE](LICENSE) file for details.
92+
See the [LICENSE](LICENSE) file for details.

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
module github.com/NodePassProject/logs
22

3-
go 1.25.0
3+
go 1.25.6

logs.go

Lines changed: 16 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// Package logs 提供了一个简单、灵活且线程安全的日志记录系统。
21
package logs
32

43
import (
@@ -9,20 +8,17 @@ import (
98
"time"
109
)
1110

12-
// LogLevel 表示日志级别的枚举类型
1311
type LogLevel int
1412

15-
// 定义不同的日志级别常量
1613
const (
17-
None LogLevel = iota // 无日志输出
18-
Debug // 调试级别
19-
Info // 信息级别
20-
Warn // 警告级别
21-
Error // 错误级别
22-
Event // 事件级别
14+
None LogLevel = iota
15+
Debug
16+
Info
17+
Warn
18+
Error
19+
Event
2320
)
2421

25-
// levelStrings 将日志级别映射到对应的字符串表示
2622
var levelStrings = map[LogLevel]string{
2723
None: "NONE",
2824
Debug: "DEBUG",
@@ -32,17 +28,15 @@ var levelStrings = map[LogLevel]string{
3228
Event: "EVENT",
3329
}
3430

35-
// ANSI转义序列,用于控制终端输出的颜色
3631
const (
37-
ansiBlue = "\033[34m" // 蓝色
38-
ansiGreen = "\033[32m" // 绿色
39-
ansiYellow = "\033[33m" // 黄色
40-
ansiRed = "\033[31m" // 红色
41-
ansiCyan = "\033[36m" // 青色
42-
resetColor = "\033[0m" // 重置颜色
32+
ansiBlue = "\033[34m"
33+
ansiGreen = "\033[32m"
34+
ansiYellow = "\033[33m"
35+
ansiRed = "\033[31m"
36+
ansiCyan = "\033[36m"
37+
resetColor = "\033[0m"
4338
)
4439

45-
// levelColors 将日志级别映射到对应的ANSI颜色代码
4640
var levelColors = map[LogLevel]string{
4741
None: "",
4842
Debug: ansiBlue,
@@ -52,31 +46,26 @@ var levelColors = map[LogLevel]string{
5246
Event: ansiCyan,
5347
}
5448

55-
// Logger 是自定义的日志记录器结构体
5649
type Logger struct {
57-
mu sync.Mutex // 互斥锁,确保并发安全
58-
minLogLevel LogLevel // 最小日志级别,低于此级别的日志不会被输出
59-
enableColor bool // 是否启用彩色输出
60-
timeFormat string // 时间戳格式
50+
mu sync.Mutex
51+
minLogLevel LogLevel
52+
enableColor bool
53+
timeFormat string
6154
}
6255

63-
// logAdapter 是标准日志库的适配器
6456
type logAdapter struct {
6557
logger *Logger
6658
}
6759

68-
// StdLogger 返回一个标准库日志实例,它将使用当前Logger输出日志
6960
func (l *Logger) StdLogger() *log.Logger {
7061
return log.New(&logAdapter{logger: l}, "", 0)
7162
}
7263

73-
// Write 实现io.Writer接口,使logAdapter可以作为标准日志库的输出目标
7464
func (a *logAdapter) Write(p []byte) (n int, err error) {
7565
a.logger.Debug("Internal: %s", string(bytes.TrimSpace(p)))
7666
return len(p), nil
7767
}
7868

79-
// NewLogger 创建并返回一个新的Logger实例
8069
func NewLogger(logLevel LogLevel, enableColor bool) *Logger {
8170
if logLevel < None || logLevel > Event {
8271
logLevel = Info
@@ -89,7 +78,6 @@ func NewLogger(logLevel LogLevel, enableColor bool) *Logger {
8978
}
9079
}
9180

92-
// SetLogLevel 设置最小日志级别
9381
func (l *Logger) SetLogLevel(logLevel LogLevel) {
9482
if l.minLogLevel != logLevel {
9583
l.mu.Lock()
@@ -98,14 +86,12 @@ func (l *Logger) SetLogLevel(logLevel LogLevel) {
9886
}
9987
}
10088

101-
// GetLogLevel 获取当前的最小日志级别
10289
func (l *Logger) GetLogLevel() LogLevel {
10390
l.mu.Lock()
10491
defer l.mu.Unlock()
10592
return l.minLogLevel
10693
}
10794

108-
// EnableColor 设置是否启用彩色输出
10995
func (l *Logger) EnableColor(enable bool) {
11096
if l.enableColor != enable {
11197
l.mu.Lock()
@@ -114,7 +100,6 @@ func (l *Logger) EnableColor(enable bool) {
114100
}
115101
}
116102

117-
// log 是内部日志记录函数,处理通用的日志记录逻辑
118103
func (l *Logger) log(logLevel LogLevel, format string, v ...any) {
119104
if logLevel < None || logLevel > Event {
120105
logLevel = Info
@@ -135,7 +120,6 @@ func (l *Logger) log(logLevel LogLevel, format string, v ...any) {
135120
l.writeLog(logLevel, timestamp, levelStr, message)
136121
}
137122

138-
// writeLog 负责实际的日志输出,支持彩色或普通文本输出
139123
func (l *Logger) writeLog(level LogLevel, timestamp, levelStr, message string) {
140124
if l.enableColor {
141125
colorCode := levelColors[level]
@@ -145,27 +129,22 @@ func (l *Logger) writeLog(level LogLevel, timestamp, levelStr, message string) {
145129
}
146130
}
147131

148-
// Debug 输出调试级别的日志
149132
func (l *Logger) Debug(format string, v ...any) {
150133
l.log(Debug, format, v...)
151134
}
152135

153-
// Info 输出信息级别的日志
154136
func (l *Logger) Info(format string, v ...any) {
155137
l.log(Info, format, v...)
156138
}
157139

158-
// Warn 输出警告级别的日志
159140
func (l *Logger) Warn(format string, v ...any) {
160141
l.log(Warn, format, v...)
161142
}
162143

163-
// Error 输出错误级别的日志
164144
func (l *Logger) Error(format string, v ...any) {
165145
l.log(Error, format, v...)
166146
}
167147

168-
// Event 输出事件级别的日志
169148
func (l *Logger) Event(format string, v ...any) {
170149
l.log(Event, format, v...)
171150
}

0 commit comments

Comments
 (0)