--- Why don't we take a Configuration as an argument? Because it
--- would create circular imports!
-init_logging :: Maybe FilePath -> Priority -> Bool -> IO ()
-init_logging log_file log_level syslog = do
+-- If @syslog@ is 'False' and @log_file@ is 'Nothing'; then nothing
+-- will be logged and the @log_level@ will essentially be ignored
+-- (even though the root logger will have its level set).
+--
+init_logging :: Maybe FilePath -- ^ Path to the log file (optional)
+ -> Bool -- ^ Log to syslog?
+ -> Priority -- ^ The priority at and above which
+ -- to log messages.
+ -> IO ()
+init_logging log_file syslog log_level = do