diff --git a/hlog/levels.go b/hlog/levels.go index de0bc1b..52bfcfe 100644 --- a/hlog/levels.go +++ b/hlog/levels.go @@ -1,12 +1,16 @@ package hlog -import "github.com/rs/zerolog" +import ( + "github.com/pkg/errors" + "github.com/rs/zerolog" +) type Level = zerolog.Level // Takes a log level as string and converts it to a Level interface. // If the string is not a valid input it will return InfoLevel -func LogLevel(level string) Level { +// Valid levels: trace, debug, info, warn, error, fatal, panic +func LogLevel(level string) (Level, error) { levels := map[string]zerolog.Level{ "trace": zerolog.TraceLevel, "debug": zerolog.DebugLevel, @@ -18,7 +22,7 @@ func LogLevel(level string) Level { } logLevel, valid := levels[level] if !valid { - return zerolog.InfoLevel + return 0, errors.New("Invalid log level specified.") } - return logLevel + return logLevel, nil }