fix: fatal and panic does not terminate the program

This commit is contained in:
yusing 2025-04-25 07:01:39 +08:00
parent 8363dfe257
commit c8e9ed8440

View file

@ -1,6 +1,8 @@
package gperr package gperr
import ( import (
"os"
"github.com/rs/zerolog" "github.com/rs/zerolog"
"github.com/yusing/go-proxy/internal/common" "github.com/yusing/go-proxy/internal/common"
"github.com/yusing/go-proxy/internal/logging" "github.com/yusing/go-proxy/internal/logging"
@ -14,6 +16,12 @@ func log(msg string, err error, level zerolog.Level, logger ...*zerolog.Logger)
l = logging.GetLogger() l = logging.GetLogger()
} }
l.WithLevel(level).Msg(New(highlight(msg)).With(err).Error()) l.WithLevel(level).Msg(New(highlight(msg)).With(err).Error())
switch level {
case zerolog.FatalLevel:
os.Exit(1)
case zerolog.PanicLevel:
panic(err)
}
} }
func LogFatal(msg string, err error, logger ...*zerolog.Logger) { func LogFatal(msg string, err error, logger ...*zerolog.Logger) {