X-Git-Url: https://ruderich.org/simon/gitweb/?p=safcm%2Fsafcm.git;a=blobdiff_plain;f=log.go;h=6e063ceb12345526b269fc3960bec49d2e32beb9;hp=029d975be89cf7247b749d9ba3bc1e73414160bb;hb=2804606f9f8dc5078c38580bac363b47eb638620;hpb=f2f2bc47e8729548f3c10117f7f008b547c4afc5 diff --git a/log.go b/log.go index 029d975..6e063ce 100644 --- a/log.go +++ b/log.go @@ -17,6 +17,10 @@ package safcm +import ( + "fmt" +) + // LogLevel controls the number of displayed log messages. Higher levels // include all messages from lower levels (e.g. LogVerbose includes all // messages from LogInfo). @@ -37,3 +41,24 @@ const ( // Log all RPC messages LogDebug3 ) + +func ParseLogLevel(s string) (LogLevel, error) { + var x LogLevel + switch s { + case "error": + x = LogError + case "info": + x = LogInfo + case "verbose": + x = LogVerbose + case "debug": + x = LogDebug + case "debug2": + x = LogDebug2 + case "debug3": + x = LogDebug3 + default: + return 0, fmt.Errorf("invalid LogLevel %q", s) + } + return x, nil +}