9 import System.Log.Handler.Simple ( GenericHandler )
10 import System.Log.Logger (
11 Priority ( DEBUG, INFO ),
21 log_debug :: String -> IO ()
22 log_debug = debugM rootLoggerName
24 log_error :: String -> IO ()
25 log_error = errorM rootLoggerName
27 log_info :: String -> IO ()
28 log_info = infoM rootLoggerName
30 log_warning :: String -> IO ()
31 log_warning = warningM rootLoggerName
33 init_logging :: Bool -> IO ()
34 init_logging use_syslog = do
35 let max_level = if use_syslog then INFO else DEBUG
36 -- We need to specify the type here; otherwise, setHandlers won't
37 -- accept the empty list as an instance of [LogHandler a].
38 let no_handlers = [] :: [GenericHandler a]
39 -- Removes the default "echo to stdout" handler.
40 updateGlobalLogger rootLoggerName (setLevel max_level
41 . setHandlers no_handlers)