@@ -17,6 +17,8 @@ module Control.Logger
17 , tryJustWarn
17 , tryJustWarn
18 , logExceptions
18 , logExceptions
19 , LogSeverity(..)
19 , LogSeverity(..)
20 , oneoffLog
22 , oneoffLog
21 , LoggingMonad
23 , LoggingMonad
22 , LogSource
24 , LogSource
@@ -210,3 +212,19 @@ compactCallStack =
210 . map (\(f, l) -> f <> " (" <> compactLoc l <> ")")
212 . map (\(f, l) -> f <> " (" <> compactLoc l <> ")")
211 . getCallStack
213 . getCallStack
212 where compactLoc loc = srcLocFile loc <> ":" <> show (srcLocStartLine loc)
214 where compactLoc loc = srcLocFile loc <> ":" <> show (srcLocStartLine loc)
216+parseLogLevel :: Text -> Either String LogSeverity
217+parseLogLevel t = case Text.strip t of
218+ "debug" -> pure Debug
221+ "error" -> pure Error
223+ "Unreadable log level. Possible values: debug, info, warn and error"
225+renderLogLevel :: LogSeverity -> Text
226+renderLogLevel = \case