| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
System.Log.DBus.Server
Synopsis
- maybeToEither :: b -> Maybe a -> Either b a
- newtype LogServer = LogServer (IORef (Map String Priority))
- newLogServer :: IO LogServer
- setLogLevelTracked :: LogServer -> String -> Priority -> IO ()
- setLogLevelFromPriorityStringTracked :: LogServer -> String -> String -> IO (Either Reply ())
- getLogLevel :: String -> IO String
- getConfiguredLogLevels :: LogServer -> IO (Map String String)
- logInterfaceWithServer :: LogServer -> Interface
- logInterface :: Interface
- logPath :: ObjectPath
- startLogServerWithTracking :: Client -> IO LogServer
- startLogServer :: Client -> IO ()
- logIntrospectionInterface :: Interface
- setLogLevelFromPriorityString :: String -> String -> IO (Either Reply ())
- setLogLevel :: String -> Priority -> IO ()
Documentation
maybeToEither :: b -> Maybe a -> Either b a Source #
An opaque handle for the log server, which tracks loggers whose levels have been explicitly set.
Constructors
| LogServer (IORef (Map String Priority)) |
newLogServer :: IO LogServer Source #
Create a new LogServer.
setLogLevelTracked :: LogServer -> String -> Priority -> IO () Source #
setLogLevelFromPriorityStringTracked :: LogServer -> String -> String -> IO (Either Reply ()) Source #
getLogLevel :: String -> IO String Source #
Get the log level of a specific logger. Returns the level as a string, or an empty string if no level has been explicitly set on that logger.
getConfiguredLogLevels :: LogServer -> IO (Map String String) Source #
Get all loggers whose levels have been explicitly set via SetLogLevel,
as a map from logger name to level string.
logInterfaceWithServer :: LogServer -> Interface Source #
Build the D-Bus interface with tracking and introspection methods.
logInterface :: Interface Source #
The original interface with only SetLogLevel. Kept for backward
compatibility.
startLogServerWithTracking :: Client -> IO LogServer Source #
Start the log server with tracking and introspection. Returns a
LogServer handle that can be used to register additional loggers.
startLogServer :: Client -> IO () Source #
Start the log server (original API, no tracking).
logIntrospectionInterface :: Interface Source #
Introspection interface including all methods (SetLogLevel, GetLogLevel, GetConfiguredLogLevels). Suitable for TH client generation.
setLogLevelFromPriorityString :: String -> String -> IO (Either Reply ()) Source #
setLogLevel :: String -> Priority -> IO () Source #