Skip to content

Commit 2e7d4cb

Browse files
committed
fix: log.Fatal
1 parent 885c1f5 commit 2e7d4cb

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

log.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -214,10 +214,10 @@ func (l *Logger) Panic(params ...any) {
214214
}
215215

216216
func (l *Logger) Fatal(params ...any) {
217+
defer os.Exit(1)
217218
if e := getEntry(&l.options); e != nil {
218219
l.log(e, FATL, params...)
219220
}
220-
os.Exit(1)
221221
}
222222

223223
func (l *Logger) log(e *Entry, level Level, params ...any) {
@@ -241,6 +241,10 @@ func (l *Logger) log(e *Entry, level Level, params ...any) {
241241
}
242242
}
243243
}
244+
if e.Level == FATL {
245+
e.log()
246+
return
247+
}
244248
select {
245249
case l.logs <- e:
246250
case <-time.After(1 * time.Second):
@@ -304,11 +308,11 @@ func Panic(params ...any) {
304308
}
305309

306310
func Fatal(params ...any) {
311+
defer os.Exit(1)
307312
l := getDefaultLogger()
308313
if l != nil {
309314
if e := getEntry(&l.options); e != nil {
310315
l.log(e, FATL, params...)
311316
}
312317
}
313-
os.Exit(1)
314318
}

log_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ func TestNamedFileLoggerFunctions(t *testing.T) {
108108
logger.Info("info message: %s", "hello, world")
109109
logger.Warn("warn message")
110110
logger.Error("error message")
111+
logger.Fatal("error message")
111112

112113
time.Sleep(5 * time.Second)
113114
defer func() {

0 commit comments

Comments
 (0)