monad-logger-0.3.30: A class of monads which can log messages.

Safe HaskellSafe
LanguageHaskell2010

Control.Monad.Logger.CallStack

Description

Log functions using CallStack support in place of Template Haskell

Since: 0.3.19

Synopsis

Documentation

data LogStr Source #

Log message builder. Use (<>) to append two LogStr in O(1).

Instances
Eq LogStr 
Instance details

Defined in System.Log.FastLogger.LogStr

Show LogStr 
Instance details

Defined in System.Log.FastLogger.LogStr

IsString LogStr 
Instance details

Defined in System.Log.FastLogger.LogStr

Semigroup LogStr 
Instance details

Defined in System.Log.FastLogger.LogStr

Monoid LogStr 
Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr LogStr 
Instance details

Defined in System.Log.FastLogger.LogStr

class ToLogStr msg where Source #

Types that can be converted to a LogStr. Instances for types from the text library use a UTF-8 encoding. Instances for numerical types use a decimal encoding.

Methods

toLogStr :: msg -> LogStr Source #

Instances
ToLogStr Double

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Float

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Int

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

Methods

toLogStr :: Int -> LogStr Source #

ToLogStr Int8

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

Methods

toLogStr :: Int8 -> LogStr Source #

ToLogStr Int16

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Int32

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Int64

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Integer

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Word

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

Methods

toLogStr :: Word -> LogStr Source #

ToLogStr Word8

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Word16

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Word32

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Word64

Since: fast-logger-2.4.14

Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr String 
Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr ByteString 
Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr ByteString 
Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Builder 
Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr LogStr 
Instance details

Defined in System.Log.FastLogger.LogStr

ToLogStr Text 
Instance details

Defined in System.Log.FastLogger.LogStr

Methods

toLogStr :: Text -> LogStr Source #

ToLogStr Text 
Instance details

Defined in System.Log.FastLogger.LogStr

Methods

toLogStr :: Text -> LogStr Source #

data Loc Source #

Instances
Eq Loc 
Instance details

Defined in Language.Haskell.TH.Syntax

Methods

(==) :: Loc -> Loc -> Bool Source #

(/=) :: Loc -> Loc -> Bool Source #

Data Loc 
Instance details

Defined in Language.Haskell.TH.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Loc -> c Loc Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Loc Source #

toConstr :: Loc -> Constr Source #

dataTypeOf :: Loc -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Loc) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Loc) Source #

gmapT :: (forall b. Data b => b -> b) -> Loc -> Loc Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Loc -> r Source #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Loc -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Loc -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Loc -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Loc -> m Loc Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Loc -> m Loc Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Loc -> m Loc Source #

Ord Loc 
Instance details

Defined in Language.Haskell.TH.Syntax

Methods

compare :: Loc -> Loc -> Ordering Source #

(<) :: Loc -> Loc -> Bool Source #

(<=) :: Loc -> Loc -> Bool Source #

(>) :: Loc -> Loc -> Bool Source #

(>=) :: Loc -> Loc -> Bool Source #

max :: Loc -> Loc -> Loc Source #

min :: Loc -> Loc -> Loc Source #

Show Loc 
Instance details

Defined in Language.Haskell.TH.Syntax

Generic Loc 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Loc :: Type -> Type Source #

Methods

from :: Loc -> Rep Loc x Source #

to :: Rep Loc x -> Loc Source #

type Rep Loc 
Instance details

Defined in Language.Haskell.TH.Syntax

newtype LoggingT m a Source #

Monad transformer that adds a new logging function.

Since: 0.2.2

Constructors

LoggingT 

Fields

Instances
MonadTrans LoggingT Source # 
Instance details

Defined in Control.Monad.Logger

Methods

lift :: Monad m => m a -> LoggingT m a Source #

MonadTransControl LoggingT Source # 
Instance details

Defined in Control.Monad.Logger

Associated Types

type StT LoggingT a :: Type

Methods

liftWith :: Monad m => (Run LoggingT -> m a) -> LoggingT m a

restoreT :: Monad m => m (StT LoggingT a) -> LoggingT m a

MonadRWS r w s m => MonadRWS r w s (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

MonadWriter w m => MonadWriter w (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

writer :: (a, w) -> LoggingT m a Source #

tell :: w -> LoggingT m () Source #

listen :: LoggingT m a -> LoggingT m (a, w) Source #

pass :: LoggingT m (a, w -> w) -> LoggingT m a Source #

MonadState s m => MonadState s (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

get :: LoggingT m s Source #

put :: s -> LoggingT m () Source #

state :: (s -> (a, s)) -> LoggingT m a Source #

MonadReader r m => MonadReader r (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

ask :: LoggingT m r Source #

local :: (r -> r) -> LoggingT m a -> LoggingT m a Source #

reader :: (r -> a) -> LoggingT m a Source #

MonadError e m => MonadError e (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

throwError :: e -> LoggingT m a Source #

catchError :: LoggingT m a -> (e -> LoggingT m a) -> LoggingT m a Source #

MonadBase b m => MonadBase b (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

liftBase :: b α -> LoggingT m α

MonadBaseControl b m => MonadBaseControl b (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Associated Types

type StM (LoggingT m) a :: Type

Methods

liftBaseWith :: (RunInBase (LoggingT m) b -> b a) -> LoggingT m a

restoreM :: StM (LoggingT m) a -> LoggingT m a

Monad m => Monad (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

(>>=) :: LoggingT m a -> (a -> LoggingT m b) -> LoggingT m b Source #

(>>) :: LoggingT m a -> LoggingT m b -> LoggingT m b Source #

return :: a -> LoggingT m a Source #

fail :: String -> LoggingT m a Source #

Functor m => Functor (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

fmap :: (a -> b) -> LoggingT m a -> LoggingT m b Source #

(<$) :: a -> LoggingT m b -> LoggingT m a Source #

MonadFail m => MonadFail (LoggingT m) Source #

Since: 0.3.30

Instance details

Defined in Control.Monad.Logger

Methods

fail :: String -> LoggingT m a Source #

Applicative m => Applicative (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

pure :: a -> LoggingT m a Source #

(<*>) :: LoggingT m (a -> b) -> LoggingT m a -> LoggingT m b Source #

liftA2 :: (a -> b -> c) -> LoggingT m a -> LoggingT m b -> LoggingT m c Source #

(*>) :: LoggingT m a -> LoggingT m b -> LoggingT m b Source #

(<*) :: LoggingT m a -> LoggingT m b -> LoggingT m a Source #

MonadIO m => MonadIO (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

liftIO :: IO a -> LoggingT m a Source #

MonadUnliftIO m => MonadUnliftIO (LoggingT m) Source #

Since: 0.3.26

Instance details

Defined in Control.Monad.Logger

Methods

askUnliftIO :: LoggingT m (UnliftIO (LoggingT m)) Source #

withRunInIO :: ((forall a. LoggingT m a -> IO a) -> IO b) -> LoggingT m b Source #

MonadResource m => MonadResource (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

MonadThrow m => MonadThrow (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

throwM :: Exception e => e -> LoggingT m a Source #

MonadActive m => MonadActive (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

MonadCatch m => MonadCatch (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

catch :: Exception e => LoggingT m a -> (e -> LoggingT m a) -> LoggingT m a Source #

MonadMask m => MonadMask (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

mask :: ((forall a. LoggingT m a -> LoggingT m a) -> LoggingT m b) -> LoggingT m b Source #

uninterruptibleMask :: ((forall a. LoggingT m a -> LoggingT m a) -> LoggingT m b) -> LoggingT m b Source #

generalBracket :: LoggingT m a -> (a -> ExitCase b -> LoggingT m c) -> (a -> LoggingT m b) -> LoggingT m (b, c) Source #

MonadCont m => MonadCont (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

callCC :: ((a -> LoggingT m b) -> LoggingT m a) -> LoggingT m a Source #

MonadIO m => MonadLoggerIO (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: LoggingT m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadIO m => MonadLogger (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> LoggingT m () Source #

type StT LoggingT a Source # 
Instance details

Defined in Control.Monad.Logger

type StT LoggingT a = a
type StM (LoggingT m) a Source # 
Instance details

Defined in Control.Monad.Logger

type StM (LoggingT m) a = StM m a

newtype WriterLoggingT m a Source #

Since: 0.3.28

Constructors

WriterLoggingT 

Fields

Instances
MonadTrans WriterLoggingT Source # 
Instance details

Defined in Control.Monad.Logger

Methods

lift :: Monad m => m a -> WriterLoggingT m a Source #

MonadTransControl WriterLoggingT Source # 
Instance details

Defined in Control.Monad.Logger

Associated Types

type StT WriterLoggingT a :: Type

Methods

liftWith :: Monad m => (Run WriterLoggingT -> m a) -> WriterLoggingT m a

restoreT :: Monad m => m (StT WriterLoggingT a) -> WriterLoggingT m a

MonadBase b m => MonadBase b (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

liftBase :: b α -> WriterLoggingT m α

MonadBaseControl b m => MonadBaseControl b (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Associated Types

type StM (WriterLoggingT m) a :: Type

Methods

liftBaseWith :: (RunInBase (WriterLoggingT m) b -> b a) -> WriterLoggingT m a

restoreM :: StM (WriterLoggingT m) a -> WriterLoggingT m a

Monad m => Monad (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Functor m => Functor (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

fmap :: (a -> b) -> WriterLoggingT m a -> WriterLoggingT m b Source #

(<$) :: a -> WriterLoggingT m b -> WriterLoggingT m a Source #

Applicative m => Applicative (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

MonadIO m => MonadIO (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

liftIO :: IO a -> WriterLoggingT m a Source #

MonadThrow m => MonadThrow (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

throwM :: Exception e => e -> WriterLoggingT m a Source #

MonadCatch m => MonadCatch (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

catch :: Exception e => WriterLoggingT m a -> (e -> WriterLoggingT m a) -> WriterLoggingT m a Source #

MonadMask m => MonadMask (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

mask :: ((forall a. WriterLoggingT m a -> WriterLoggingT m a) -> WriterLoggingT m b) -> WriterLoggingT m b Source #

uninterruptibleMask :: ((forall a. WriterLoggingT m a -> WriterLoggingT m a) -> WriterLoggingT m b) -> WriterLoggingT m b Source #

generalBracket :: WriterLoggingT m a -> (a -> ExitCase b -> WriterLoggingT m c) -> (a -> WriterLoggingT m b) -> WriterLoggingT m (b, c) Source #

Monad m => MonadLogger (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> WriterLoggingT m () Source #

type StT WriterLoggingT a Source # 
Instance details

Defined in Control.Monad.Logger

type StT WriterLoggingT a
type StM (WriterLoggingT m) a Source # 
Instance details

Defined in Control.Monad.Logger

type StM (WriterLoggingT m) a = ComposeSt WriterLoggingT m a

newtype NoLoggingT m a Source #

Monad transformer that disables logging.

Since: 0.2.4

Constructors

NoLoggingT 

Fields

Instances
MonadTrans NoLoggingT Source # 
Instance details

Defined in Control.Monad.Logger

Methods

lift :: Monad m => m a -> NoLoggingT m a Source #

MonadTransControl NoLoggingT Source # 
Instance details

Defined in Control.Monad.Logger

Associated Types

type StT NoLoggingT a :: Type

Methods

liftWith :: Monad m => (Run NoLoggingT -> m a) -> NoLoggingT m a

restoreT :: Monad m => m (StT NoLoggingT a) -> NoLoggingT m a

MonadWriter w m => MonadWriter w (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

writer :: (a, w) -> NoLoggingT m a Source #

tell :: w -> NoLoggingT m () Source #

listen :: NoLoggingT m a -> NoLoggingT m (a, w) Source #

pass :: NoLoggingT m (a, w -> w) -> NoLoggingT m a Source #

MonadState s m => MonadState s (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

get :: NoLoggingT m s Source #

put :: s -> NoLoggingT m () Source #

state :: (s -> (a, s)) -> NoLoggingT m a Source #

MonadReader r m => MonadReader r (NoLoggingT m) Source #

Since: 0.3.24

Instance details

Defined in Control.Monad.Logger

Methods

ask :: NoLoggingT m r Source #

local :: (r -> r) -> NoLoggingT m a -> NoLoggingT m a Source #

reader :: (r -> a) -> NoLoggingT m a Source #

MonadError e m => MonadError e (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

throwError :: e -> NoLoggingT m a Source #

catchError :: NoLoggingT m a -> (e -> NoLoggingT m a) -> NoLoggingT m a Source #

MonadBase b m => MonadBase b (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

liftBase :: b α -> NoLoggingT m α

MonadBaseControl b m => MonadBaseControl b (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Associated Types

type StM (NoLoggingT m) a :: Type

Methods

liftBaseWith :: (RunInBase (NoLoggingT m) b -> b a) -> NoLoggingT m a

restoreM :: StM (NoLoggingT m) a -> NoLoggingT m a

Monad m => Monad (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

(>>=) :: NoLoggingT m a -> (a -> NoLoggingT m b) -> NoLoggingT m b Source #

(>>) :: NoLoggingT m a -> NoLoggingT m b -> NoLoggingT m b Source #

return :: a -> NoLoggingT m a Source #

fail :: String -> NoLoggingT m a Source #

Functor m => Functor (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

fmap :: (a -> b) -> NoLoggingT m a -> NoLoggingT m b Source #

(<$) :: a -> NoLoggingT m b -> NoLoggingT m a Source #

MonadFail m => MonadFail (NoLoggingT m) Source #

Since: 0.3.30

Instance details

Defined in Control.Monad.Logger

Methods

fail :: String -> NoLoggingT m a Source #

Applicative m => Applicative (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

pure :: a -> NoLoggingT m a Source #

(<*>) :: NoLoggingT m (a -> b) -> NoLoggingT m a -> NoLoggingT m b Source #

liftA2 :: (a -> b -> c) -> NoLoggingT m a -> NoLoggingT m b -> NoLoggingT m c Source #

(*>) :: NoLoggingT m a -> NoLoggingT m b -> NoLoggingT m b Source #

(<*) :: NoLoggingT m a -> NoLoggingT m b -> NoLoggingT m a Source #

MonadIO m => MonadIO (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

liftIO :: IO a -> NoLoggingT m a Source #

MonadUnliftIO m => MonadUnliftIO (NoLoggingT m) Source #

Since: 0.3.26

Instance details

Defined in Control.Monad.Logger

Methods

askUnliftIO :: NoLoggingT m (UnliftIO (NoLoggingT m)) Source #

withRunInIO :: ((forall a. NoLoggingT m a -> IO a) -> IO b) -> NoLoggingT m b Source #

MonadResource m => MonadResource (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

MonadThrow m => MonadThrow (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

throwM :: Exception e => e -> NoLoggingT m a Source #

MonadActive m => MonadActive (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

MonadCatch m => MonadCatch (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

catch :: Exception e => NoLoggingT m a -> (e -> NoLoggingT m a) -> NoLoggingT m a Source #

MonadMask m => MonadMask (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

mask :: ((forall a. NoLoggingT m a -> NoLoggingT m a) -> NoLoggingT m b) -> NoLoggingT m b Source #

uninterruptibleMask :: ((forall a. NoLoggingT m a -> NoLoggingT m a) -> NoLoggingT m b) -> NoLoggingT m b Source #

generalBracket :: NoLoggingT m a -> (a -> ExitCase b -> NoLoggingT m c) -> (a -> NoLoggingT m b) -> NoLoggingT m (b, c) Source #

MonadIO m => MonadLoggerIO (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Monad m => MonadLogger (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> NoLoggingT m () Source #

type StT NoLoggingT a Source # 
Instance details

Defined in Control.Monad.Logger

type StT NoLoggingT a = a
type StM (NoLoggingT m) a Source # 
Instance details

Defined in Control.Monad.Logger

type StM (NoLoggingT m) a = StM m a

class (MonadLogger m, MonadIO m) => MonadLoggerIO m where Source #

An extension of MonadLogger for the common case where the logging action is a simple IO action. The advantage of using this typeclass is that the logging function itself can be extracted as a first-class value, which can make it easier to manipulate monad transformer stacks, as an example.

Since: 0.3.10

Minimal complete definition

Nothing

Methods

askLoggerIO :: m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

Request the logging function itself.

Since: 0.3.10

askLoggerIO :: (MonadTrans t, MonadLoggerIO n, m ~ t n) => m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

Request the logging function itself.

Since: 0.3.10

Instances
MonadLoggerIO m => MonadLoggerIO (MaybeT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: MaybeT m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadLoggerIO m => MonadLoggerIO (ResourceT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: ResourceT m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadLoggerIO m => MonadLoggerIO (ListT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: ListT m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadIO m => MonadLoggerIO (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: LoggingT m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadIO m => MonadLoggerIO (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

(MonadLoggerIO m, Monoid w) => MonadLoggerIO (WriterT w m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: WriterT w m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

(MonadLoggerIO m, Monoid w) => MonadLoggerIO (WriterT w m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: WriterT w m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadLoggerIO m => MonadLoggerIO (StateT s m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: StateT s m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadLoggerIO m => MonadLoggerIO (StateT s m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: StateT s m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadLoggerIO m => MonadLoggerIO (ReaderT r m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: ReaderT r m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadLoggerIO m => MonadLoggerIO (ExceptT e m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: ExceptT e m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadLoggerIO m => MonadLoggerIO (IdentityT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: IdentityT m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

(MonadLoggerIO m, Error e) => MonadLoggerIO (ErrorT e m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: ErrorT e m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadLoggerIO m => MonadLoggerIO (ConduitM i o m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: ConduitM i o m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadLoggerIO m => MonadLoggerIO (ContT r m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: ContT r m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

(MonadLoggerIO m, Monoid w) => MonadLoggerIO (RWST r w s m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: RWST r w s m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

(MonadLoggerIO m, Monoid w) => MonadLoggerIO (RWST r w s m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: RWST r w s m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

MonadLoggerIO m => MonadLoggerIO (Pipe l i o u m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

askLoggerIO :: Pipe l i o u m (Loc -> LogSource -> LogLevel -> LogStr -> IO ()) Source #

class Monad m => MonadLogger m where Source #

A Monad which has the ability to log messages in some manner.

Minimal complete definition

Nothing

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> m () Source #

monadLoggerLog :: (MonadLogger m', MonadTrans t, MonadLogger (t m'), ToLogStr msg, m ~ t m') => Loc -> LogSource -> LogLevel -> msg -> m () Source #

Instances
MonadLogger m => MonadLogger (MaybeT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> MaybeT m () Source #

MonadLogger m => MonadLogger (ResourceT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> ResourceT m () Source #

MonadLogger m => MonadLogger (ListT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> ListT m () Source #

MonadIO m => MonadLogger (LoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> LoggingT m () Source #

Monad m => MonadLogger (WriterLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> WriterLoggingT m () Source #

Monad m => MonadLogger (NoLoggingT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> NoLoggingT m () Source #

(MonadLogger m, Monoid w) => MonadLogger (WriterT w m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> WriterT w m () Source #

(MonadLogger m, Monoid w) => MonadLogger (WriterT w m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> WriterT w m () Source #

MonadLogger m => MonadLogger (StateT s m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> StateT s m () Source #

MonadLogger m => MonadLogger (StateT s m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> StateT s m () Source #

MonadLogger m => MonadLogger (ReaderT r m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> ReaderT r m () Source #

MonadLogger m => MonadLogger (ExceptT e m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> ExceptT e m () Source #

MonadLogger m => MonadLogger (IdentityT m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> IdentityT m () Source #

(MonadLogger m, Error e) => MonadLogger (ErrorT e m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> ErrorT e m () Source #

MonadLogger m => MonadLogger (ConduitM i o m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> ConduitM i o m () Source #

MonadLogger m => MonadLogger (ContT r m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> ContT r m () Source #

(MonadLogger m, Monoid w) => MonadLogger (RWST r w s m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> RWST r w s m () Source #

(MonadLogger m, Monoid w) => MonadLogger (RWST r w s m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> RWST r w s m () Source #

MonadLogger m => MonadLogger (Pipe l i o u m) Source # 
Instance details

Defined in Control.Monad.Logger

Methods

monadLoggerLog :: ToLogStr msg => Loc -> LogSource -> LogLevel -> msg -> Pipe l i o u m () Source #

liftLoc :: Loc -> Q Exp Source #

Lift a location into an Exp.

Since: 0.3.1

logDebugS :: Q Exp Source #

Generates a function that takes a LogSource and Text and logs a LevelDebug message. Usage:

$logDebugS "SomeSource" "This is a debug log message"

logOtherS :: Q Exp Source #

Generates a function that takes a LogSource, a level name and a Text and logs a LevelOther message. Usage:

$logOtherS "SomeSource" "My new level" "This is a log message"

runWriterLoggingT :: Functor m => WriterLoggingT m a -> m (a, [LogLine]) Source #

Run a block using a MonadLogger instance. Return a value and logs in a list | @since 0.3.28

execWriterLoggingT :: Functor m => WriterLoggingT m a -> m [LogLine] Source #

Run a block using a MonadLogger instance. Return logs in a list | @since 0.3.28

runFileLoggingT :: MonadBaseControl IO m => FilePath -> LoggingT m a -> m a Source #

Run a block using a MonadLogger instance which appends to the specified file.

Since: 0.3.22

runStderrLoggingT :: MonadIO m => LoggingT m a -> m a Source #

Run a block using a MonadLogger instance which prints to stderr.

Since: 0.2.2

runStdoutLoggingT :: MonadIO m => LoggingT m a -> m a Source #

Run a block using a MonadLogger instance which prints to stdout.

Since: 0.2.2

runChanLoggingT :: MonadIO m => Chan LogLine -> LoggingT m a -> m a Source #

Run a block using a MonadLogger instance which writes tuples to an unbounded channel.

The tuples can be extracted (ie. in another thread) with unChanLoggingT or a custom extraction funtion, and written to a destination.

Since: 0.3.17

unChanLoggingT :: (MonadLogger m, MonadIO m) => Chan LogLine -> m void Source #

Read logging tuples from an unbounded channel and log them into a MonadLoggerIO monad, forever.

For use in a dedicated thread with a channel fed by runChanLoggingT.

Since: 0.3.17

withChannelLogger Source #

Arguments

:: (MonadBaseControl IO m, MonadIO m) 
=> Int

Number of messages to keep

-> LoggingT m a 
-> LoggingT m a 

Within the LoggingT monad, capture all log messages to a bounded channel of the indicated size, and only actually log them if there is an exception.

Since: 0.3.2

filterLogger :: (LogSource -> LogLevel -> Bool) -> LoggingT m a -> LoggingT m a Source #

Only log messages passing the given predicate function.

This can be a convenient way, for example, to ignore debug level messages.

Since: 0.3.13

mapLoggingT :: (m a -> n b) -> LoggingT m a -> LoggingT n b Source #

Map the unwrapped computation using the given function.

Since: 0.3.29

mapNoLoggingT :: (m a -> n b) -> NoLoggingT m a -> NoLoggingT n b Source #

Map the unwrapped computation using the given function.

Since: 0.3.29

defaultLoc :: Loc Source #

dummy location, used with logWithoutLoc

Since: 0.3.23

logWithoutLoc :: (MonadLogger m, ToLogStr msg) => LogSource -> LogLevel -> msg -> m () Source #

Since: 0.3.23

logInfoN :: MonadLogger m => Text -> m () Source #

logWarnN :: MonadLogger m => Text -> m () Source #

logDebugNS :: MonadLogger m => Text -> Text -> m () Source #

logInfoNS :: MonadLogger m => Text -> Text -> m () Source #

logWarnNS :: MonadLogger m => Text -> Text -> m () Source #

logErrorNS :: MonadLogger m => Text -> Text -> m () Source #

logDebugCS :: MonadLogger m => CallStack -> Text -> m () Source #

Logs a message with location given by CallStack. See CallStack for more convenient functions for CallStack based logging.

Since: 0.3.19

logInfoCS :: MonadLogger m => CallStack -> Text -> m () Source #

See logDebugCS

Since: 0.3.19

logWarnCS :: MonadLogger m => CallStack -> Text -> m () Source #

See logDebugCS

Since: 0.3.19

logErrorCS :: MonadLogger m => CallStack -> Text -> m () Source #

See logDebugCS

Since: 0.3.19

logOtherCS :: MonadLogger m => CallStack -> LogLevel -> Text -> m () Source #

See logDebugCS

Since: 0.3.19

logDebug :: (HasCallStack, MonadLogger m) => Text -> m () Source #

Logs a message with the location provided by an implicit CallStack.

Since: 0.3.19

logInfo :: (HasCallStack, MonadLogger m) => Text -> m () Source #

See logDebug

Since: 0.3.19

logWarn :: (HasCallStack, MonadLogger m) => Text -> m () Source #

See logDebug

Since: 0.3.19

logError :: (HasCallStack, MonadLogger m) => Text -> m () Source #

See logDebug

Since: 0.3.19

logOther :: (HasCallStack, MonadLogger m) => LogLevel -> Text -> m () Source #

See logDebug

Since: 0.3.25

logDebugSH :: (HasCallStack, MonadLogger m, Show a) => a -> m () Source #

Logs a showable value with the location provided by an implicit CallStack.

Since: 0.3.25

logInfoSH :: (HasCallStack, MonadLogger m, Show a) => a -> m () Source #

See logDebugSH

Since: 0.3.25

logWarnSH :: (HasCallStack, MonadLogger m, Show a) => a -> m () Source #

See logDebugSH

Since: 0.3.25

logErrorSH :: (HasCallStack, MonadLogger m, Show a) => a -> m () Source #

See logDebugSH

Since: 0.3.25

logOtherSH :: (HasCallStack, MonadLogger m, Show a) => LogLevel -> a -> m () Source #

See logDebugSH

Since: 0.3.25