gotosocial/vendor/codeberg.org/gruf/go-logger/level.go
2021-11-27 15:26:58 +01:00

40 lines
750 B
Go

package logger
// LEVEL defines a level of logging
type LEVEL uint8
// Available levels of logging.
const (
unset LEVEL = 255
DEBUG LEVEL = 5
INFO LEVEL = 10
WARN LEVEL = 15
ERROR LEVEL = 20
FATAL LEVEL = 25
)
var unknownLevel = "unknown"
// Levels defines a mapping of log LEVELs to formatted level strings
type Levels map[LEVEL]string
// DefaultLevels returns the default set of log levels
func DefaultLevels() Levels {
return Levels{
DEBUG: "DEBUG",
INFO: "INFO",
WARN: "WARN",
ERROR: "ERROR",
FATAL: "FATAL",
}
}
// LevelString fetches the appropriate level string for the provided level, or "unknown"
func (l Levels) LevelString(lvl LEVEL) string {
str, ok := l[lvl]
if !ok {
return unknownLevel
}
return str
}