| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
MatrixBot.Log
Description
Helpers for the log messages
Synopsis
- withLogger :: MonadUnliftIO m => LogStateHandle -> (Logger -> m a) -> m a
- logDebug :: (MonadLogger m, HasCallStack) => Text -> m ()
- logInfo :: (MonadLogger m, HasCallStack) => Text -> m ()
- logWarn :: (MonadLogger m, HasCallStack) => Text -> m ()
- logError :: (MonadLogger m, HasCallStack) => Text -> m ()
- newtype Logger = Logger {
- runLogger :: forall (m :: Type -> Type). MonadIO m => Loc -> LogLevel -> Text -> m ()
- class HasLogger r where
- defaultMonadLoggerLog :: (MonadIO m, HasLogger r, MonadReader r m, ToLogStr msg) => Loc -> LogSource -> LogLevel -> msg -> m ()
- data LogStateHandle
- createLogState :: MonadIO m => m LogStateHandle
- setLogLevel :: (MonadUnliftIO m, MonadLogger m) => LogStateHandle -> Maybe LogLevel -> m ()
- forceLogInitialization :: (MonadUnliftIO m, MonadLogger m) => LogStateHandle -> m ()
Documentation
withLogger :: MonadUnliftIO m => LogStateHandle -> (Logger -> m a) -> m a Source #
defaultMonadLoggerLog :: (MonadIO m, HasLogger r, MonadReader r m, ToLogStr msg) => Loc -> LogSource -> LogLevel -> msg -> m () Source #
Default implementation for ML.MonadLogger
data LogStateHandle Source #
createLogState :: MonadIO m => m LogStateHandle Source #
setLogLevel :: (MonadUnliftIO m, MonadLogger m) => LogStateHandle -> Maybe LogLevel -> m () Source #
Set the desired log-level for the logger
Will initialize the logger if it was not yet initialized. Otherwise will just override the wanted log level.
forceLogInitialization :: (MonadUnliftIO m, MonadLogger m) => LogStateHandle -> m () Source #
Initialize log to debug-level in case it is not yet initialized
Useful for handling application failures before the log-level is set. So that errors are reported instead of stay silent in the queue.