now it's a real logging library
Gitea/etcdmtr/pipeline/head This commit looks good Details

This commit is contained in:
dave 2024-02-26 21:56:07 -08:00
parent f66523610a
commit 9db5748bca
1 changed files with 33 additions and 2 deletions

View File

@ -17,14 +17,45 @@ const (
)
type ELog struct {
parent *ELog
name string
Level LogLevel
DefaultLevel LogLevel
}
func (e *ELog) _Log(level LogLevel, message string, a ...any) (n int, err error) {
if level >= e.Level {
return fmt.Printf(message+"\n", a...)
}
return 0, nil
}
func (e *ELog) Log(message string, a ...any) (n int, err error) {
return fmt.Printf(message+"\n", a...)
return e._Log(e.DefaultLevel, message, a...)
}
func (e *ELog) Debug(message string, a ...any) (n int, err error) {
return e._Log(LOGLEVEL_DEBUG, message, a...)
}
func (e *ELog) Info(message string, a ...any) (n int, err error) {
return e._Log(LOGLEVEL_INFO, message, a...)
}
func (e *ELog) Warning(message string, a ...any) (n int, err error) {
return e._Log(LOGLEVEL_WARNING, message, a...)
}
func (e *ELog) Error(message string, a ...any) (n int, err error) {
return e._Log(LOGLEVEL_ERROR, message, a...)
}
func (e *ELog) Critical(message string, a ...any) (n int, err error) {
return e._Log(LOGLEVEL_CRITICAL, message, a...)
}
func (e *ELog) Fatal(message string, a ...any) (n int, err error) {
e.Log(message, a...)
e._Log(LOGLEVEL_FATAL, message, a...)
os.Exit(1)
return 0, nil
}