diff --git a/log-warper.cabal b/log-warper.cabal
--- a/log-warper.cabal
+++ b/log-warper.cabal
@@ -1,5 +1,5 @@
 name:                log-warper
-version:             1.0.2
+version:             1.0.3
 synopsis:            Flexible, configurable, monadic and pretty logging
 homepage:            https://github.com/serokell/log-warper
 license:             MIT
diff --git a/src/System/Wlog/Formatter.hs b/src/System/Wlog/Formatter.hs
--- a/src/System/Wlog/Formatter.hs
+++ b/src/System/Wlog/Formatter.hs
@@ -103,7 +103,7 @@
     replaceVarM (vars ++ predefinedVars) format
   where
     predefinedVars = [ ("msg", pure msg)
-                     , ("prio", pure $ show prio)
+                     , ("prio", pure $ T.toUpper $ show prio)
                      , ("loggername", pure $ T.pack loggername)
                      , ("tid", show <$> myThreadId)
 #ifndef mingw32_HOST_OS
diff --git a/src/System/Wlog/Logger.hs b/src/System/Wlog/Logger.hs
--- a/src/System/Wlog/Logger.hs
+++ b/src/System/Wlog/Logger.hs
@@ -138,32 +138,32 @@
 -- Utility functions
 ---------------------------------------------------------------------------
 
-{- | Log a message at 'DEBUG' priority -}
-debugM :: String                         -- ^ Logger name
+{- | Log a message at 'Debug' priority -}
+debugM :: String                       -- ^ Logger name
        -> Text                         -- ^ Log message
        -> IO ()
 debugM s = logM s Debug
 
-{- | Log a message at 'INFO' priority -}
-infoM :: String                         -- ^ Logger name
-      -> Text                         -- ^ Log message
+{- | Log a message at 'Info' priority -}
+infoM :: String                        -- ^ Logger name
+      -> Text                          -- ^ Log message
       -> IO ()
 infoM s = logM s Info
 
-{- | Log a message at 'NOTICE' priority -}
-noticeM :: String                         -- ^ Logger name
-        -> Text                         -- ^ Log message
+{- | Log a message at 'Notice' priority -}
+noticeM :: String                      -- ^ Logger name
+        -> Text                        -- ^ Log message
         -> IO ()
 noticeM s = logM s Notice
 
-{- | Log a message at 'WARNING' priority -}
-warningM :: String                         -- ^ Logger name
-         -> Text                         -- ^ Log message
+{- | Log a message at 'Warning' priority -}
+warningM :: String                     -- ^ Logger name
+         -> Text                       -- ^ Log message
          -> IO ()
 warningM s = logM s Warning
 
 {- | Log a message at 'ERROR' priority -}
-errorM :: String                         -- ^ Logger name
+errorM :: String                       -- ^ Logger name
        -> Text                         -- ^ Log message
        -> IO ()
 errorM s = logM s Error
@@ -208,23 +208,15 @@
 -- | Handle a log request.
 handle :: Logger -> LogRecord -> (String -> Bool) -> IO ()
 handle l lrecord@(sev, _) handlerFilter = do
-    lp <- getLoggerSeverity (name l)
+    lp <- getLoggerSeverity nm
     if sev >= lp then do
-        ph <- parentHandlers (name l)
-        forM_ ph $ callHandler lrecord (name l)
+        ph <- concatMap handlers <$> parentLoggers nm
+        forM_ ph $ callHandler lrecord nm
     else return ()
   where
+    nm = name l
     parentLoggers :: String -> IO [Logger]
-    parentLoggers [] = return []
-    parentLoggers name =
-        let pname0 = (head . drop 1 . reverse . componentsOfName) name
-            pname = fromMaybe (error "Logger.handle.parentLoggers: pname head failed") pname0
-        in do parent <- getLogger pname
-              next <- parentLoggers pname
-              return (parent : next)
-    parentHandlers :: String -> IO [HandlerT]
-    parentHandlers name = do
-        parentLoggers name >>= (return . concatMap handlers)
+    parentLoggers = mapM getLogger . componentsOfName
     -- Get the severity we should use. Find the first logger in the
     -- tree, starting here, with a set severity. If even root doesn't
     -- have one, assume "Debug".
diff --git a/test/Test/Wlog/RollingSpec.hs b/test/Test/Wlog/RollingSpec.hs
--- a/test/Test/Wlog/RollingSpec.hs
+++ b/test/Test/Wlog/RollingSpec.hs
@@ -38,7 +38,7 @@
               let expectedRollException rp =
                     (== InvalidRotation ("Rotation parameters must be positive: " <> pretty rp))
               let rollExceptionChecker rp
-                    = rotationFileHandler rp "" (panic "Test roll!")
+                    = rotationFileHandler rp "" (error "Test roll!")
                         `shouldThrow`
                       expectedRollException rp
 
