Skip to content

Commit af82e11

Browse files
authored
Merge pull request #29 from helays/fix/bugfix
feat: 异步日志库需要显式调用 Start 和 Shutdown 方法
2 parents b1c4915 + 58e5bd8 commit af82e11

7 files changed

Lines changed: 286 additions & 25 deletions

File tree

config/loadAuto/auto.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
package loadAuto
22

33
import (
4+
"fmt"
5+
"log"
6+
"path/filepath"
7+
48
"helay.net/go/utils/v3/config"
59
loadIni2 "helay.net/go/utils/v3/config/loadIni"
610
loadJson2 "helay.net/go/utils/v3/config/loadJson"
711
"helay.net/go/utils/v3/config/loadYaml"
8-
"helay.net/go/utils/v3/logger/ulogs"
9-
"path/filepath"
1012
)
1113

1214
var (
@@ -27,13 +29,13 @@ func Load[T any](i T) {
2729
if err = loadFirst(i); err == nil {
2830
return
2931
}
30-
ulogs.Error(err, "配置文件默认解析器计息失败,开始尝试其他解析器")
32+
log.Printf("默认配置解析器解析失败,尝试其他解析器 %v\n", err)
3133
}
3234
for _, v := range loadFunc {
3335
err = v(i)
3436
if err == nil {
3537
return
3638
}
3739
}
38-
ulogs.DieCheckerr(err, "载入配置文件失败")
40+
panic(fmt.Errorf("解析配置文件失败 %v", err))
3941
}

config/loadIni/load.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
package loadIni
22

33
import (
4+
"fmt"
5+
46
"gopkg.in/ini.v1"
57
"helay.net/go/utils/v3/config"
6-
"helay.net/go/utils/v3/logger/ulogs"
78
"helay.net/go/utils/v3/tools"
89
)
910

1011
func LoadIni(i any) {
11-
ulogs.DieCheckerr(LoadIniBase(i), "载入配置文件失败")
12+
if err := LoadIniBase(i); err != nil {
13+
panic(fmt.Errorf("解析配置文件失败 %v", err))
14+
}
1215
}
1316

1417
// LoadIniBase 载入配置基础功能

config/loadJson/load.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,17 @@ package loadJson
33
import (
44
"encoding/json"
55
"fmt"
6+
"os"
7+
68
"helay.net/go/utils/v3/close/osClose"
79
"helay.net/go/utils/v3/config"
8-
"helay.net/go/utils/v3/logger/ulogs"
910
"helay.net/go/utils/v3/tools"
10-
"os"
1111
)
1212

1313
func LoadJson(i any) {
14-
ulogs.DieCheckerr(LoadJsonBase(i), "解析配置文件失败")
14+
if err := LoadJsonBase(i); err != nil {
15+
panic(fmt.Errorf("解析配置文件失败 %v", err))
16+
}
1517
}
1618

1719
func LoadJsonBase(i any) error {

config/loadYaml/load.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,14 @@ import (
99
"gopkg.in/yaml.v3"
1010
"helay.net/go/utils/v3/close/osClose"
1111
"helay.net/go/utils/v3/config"
12-
"helay.net/go/utils/v3/logger/ulogs"
1312
"helay.net/go/utils/v3/tools"
1413
"helay.net/go/utils/v3/tools/fileinclude"
1514
)
1615

1716
func LoadYaml(i any) {
18-
ulogs.DieCheckerr(LoadYamlBase(i), "解析配置文件失败")
17+
if err := LoadYamlBase(i); err != nil {
18+
panic(fmt.Errorf("解析配置文件失败 %v", err))
19+
}
1920
}
2021

2122
func LoadYamlBase(i any) error {

config/parseCmd/parse.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package parseCmd
33
import (
44
"flag"
55
"fmt"
6+
"log"
67
"os"
78

89
"helay.net/go/utils/v3"
@@ -57,7 +58,7 @@ func Parseparams(f ...func()) {
5758

5859
// noinspection all
5960
if config.EnableParseParamsLog {
60-
fmt.Println("日志级别", logLevel, ulogs.Level)
61-
ulogs.Log("运行参数解析完成...")
61+
log.Printf("日志级别 %s %d\n", logLevel, ulogs.Level)
62+
log.Println("运行参数解析完成...")
6263
}
6364
}

logger/ulogs/log.go

Lines changed: 60 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -40,85 +40,133 @@ func Log(i ...interface{}) {
4040

4141
func Trace(i ...any) {
4242
if Level <= LogLevelTrace {
43-
traceLogger.Println(i...)
43+
entry := globalLogger.getEntry()
44+
entry.logger = globalLogger.traceLogger
45+
entry.args = i
46+
globalLogger.stdoutChan <- entry
4447
}
4548
}
4649

4750
// noinspection all
4851
func Tracef(format string, a ...any) {
4952
if Level <= LogLevelTrace {
50-
traceLogger.Printf(format, a...)
53+
entry := globalLogger.getEntry()
54+
entry.logger = globalLogger.traceLogger
55+
entry.isFormatted = true
56+
entry.format = format
57+
entry.args = a
58+
globalLogger.stdoutChan <- entry
5159
}
5260
}
5361

5462
// Debug 用于记录调试信息
5563
func Debug(i ...any) {
5664
if Level <= LogLevelDebug {
57-
debugLogger.Println(i...)
65+
entry := globalLogger.getEntry()
66+
entry.logger = globalLogger.debugLogger
67+
entry.args = i
68+
globalLogger.stdoutChan <- entry
5869
}
5970
}
6071

6172
// Debugf
6273
// noinspection all
6374
func Debugf(format string, a ...any) {
6475
if Level <= LogLevelDebug {
65-
debugLogger.Printf(format, a...)
76+
entry := globalLogger.getEntry()
77+
entry.logger = globalLogger.debugLogger
78+
entry.isFormatted = true
79+
entry.format = format
80+
entry.args = a
81+
globalLogger.stdoutChan <- entry
6682
}
6783
}
6884

6985
// Info 用于记录信息
7086
func Info(i ...interface{}) {
7187
if Level <= LogLevelInfo {
72-
infoLogger.Println(i...)
88+
entry := globalLogger.getEntry()
89+
entry.logger = globalLogger.infoLogger
90+
entry.args = i
91+
globalLogger.stdoutChan <- entry
7392
}
7493
}
7594

7695
// noinspection all
7796
func Infof(format string, a ...any) {
7897
if Level <= LogLevelInfo {
79-
infoLogger.Printf(format, a...)
98+
entry := globalLogger.getEntry()
99+
entry.logger = globalLogger.infoLogger
100+
entry.isFormatted = true
101+
entry.format = format
102+
entry.args = a
103+
globalLogger.stdoutChan <- entry
80104
}
81105

82106
}
83107

84108
// Warn 用于记录警告信息
85109
func Warn(i ...interface{}) {
86110
if Level <= LogLevelWarn {
87-
warnLogger.Println(i...)
111+
entry := globalLogger.getEntry()
112+
entry.logger = globalLogger.warnLogger
113+
entry.args = i
114+
globalLogger.stderrChan <- entry
88115
}
89116
}
90117

91118
// noinspection all
92119
func Warnf(format string, a ...any) {
93120
if Level <= LogLevelWarn {
94-
warnLogger.Printf(format, a...)
121+
entry := globalLogger.getEntry()
122+
entry.logger = globalLogger.warnLogger
123+
entry.isFormatted = true
124+
entry.format = format
125+
entry.args = a
126+
globalLogger.stderrChan <- entry
95127
}
96128
}
97129

98130
// Error 用于记录错误信息
99131
func Error(i ...interface{}) {
100132
if Level <= LogLevelError {
101-
errorLogger.Println(i...)
133+
entry := globalLogger.getEntry()
134+
entry.logger = globalLogger.errorLogger
135+
entry.args = i
136+
globalLogger.stderrChan <- entry
102137
}
103138
}
104139

105140
func Errorf(format string, a ...any) {
106141
if Level <= LogLevelError {
107-
errorLogger.Printf(format, a...)
142+
entry := globalLogger.getEntry()
143+
entry.logger = globalLogger.errorLogger
144+
entry.isFormatted = true
145+
entry.format = format
146+
entry.args = a
147+
globalLogger.stderrChan <- entry
108148
}
109149
}
110150

111151
// Fatal 用于记录致命错误信息
112152
func Fatal(i ...interface{}) {
113153
if Level <= LogLevelFatal {
114-
fatalLogger.Println(i...)
154+
entry := globalLogger.getEntry()
155+
entry.logger = globalLogger.fatalLogger
156+
entry.args = i
157+
globalLogger.stderrChan <- entry
115158
}
116159
}
117160

118161
// noinspection all
119162
func Fatalf(format string, a ...any) {
120163
if Level <= LogLevelFatal {
121-
fatalLogger.Printf(format, a...)
164+
entry := globalLogger.getEntry()
165+
entry.logger = globalLogger.fatalLogger
166+
entry.isFormatted = true
167+
entry.format = format
168+
entry.args = a
169+
globalLogger.stderrChan <- entry
122170
}
123171
}
124172

0 commit comments

Comments
 (0)