module NetSpider.Log
( LogLine,
WriterLoggingM,
runWriterLoggingM,
logDebugW,
logInfoW,
logWarnW,
logErrorW,
spack
) where
import qualified Control.Monad.Logger as Log
import Data.Functor.Identity (Identity, runIdentity)
import Data.Text (Text, pack)
type LogLine = (Log.Loc, Log.LogSource, Log.LogLevel, Log.LogStr)
type WriterLoggingM = Log.WriterLoggingT Identity
runWriterLoggingM :: WriterLoggingM a -> (a, [LogLine])
runWriterLoggingM :: WriterLoggingM a -> (a, [LogLine])
runWriterLoggingM = Identity (a, [LogLine]) -> (a, [LogLine])
forall a. Identity a -> a
runIdentity (Identity (a, [LogLine]) -> (a, [LogLine]))
-> (WriterLoggingM a -> Identity (a, [LogLine]))
-> WriterLoggingM a
-> (a, [LogLine])
forall b c a. (b -> c) -> (a -> b) -> a -> c
. WriterLoggingM a -> Identity (a, [LogLine])
forall (m :: * -> *) a.
Functor m =>
WriterLoggingT m a -> m (a, [LogLine])
Log.runWriterLoggingT
logDebugW :: Text -> WriterLoggingM ()
logDebugW :: Text -> WriterLoggingM ()
logDebugW = Text -> WriterLoggingM ()
forall (m :: * -> *). MonadLogger m => Text -> m ()
Log.logDebugN
logInfoW :: Text -> WriterLoggingM ()
logInfoW :: Text -> WriterLoggingM ()
logInfoW = Text -> WriterLoggingM ()
forall (m :: * -> *). MonadLogger m => Text -> m ()
Log.logInfoN
logWarnW :: Text -> WriterLoggingM ()
logWarnW :: Text -> WriterLoggingM ()
logWarnW = Text -> WriterLoggingM ()
forall (m :: * -> *). MonadLogger m => Text -> m ()
Log.logWarnN
logErrorW :: Text -> WriterLoggingM ()
logErrorW :: Text -> WriterLoggingM ()
logErrorW = Text -> WriterLoggingM ()
forall (m :: * -> *). MonadLogger m => Text -> m ()
Log.logErrorN
spack :: Show a => a -> Text
spack :: a -> Text
spack = String -> Text
pack (String -> Text) -> (a -> String) -> a -> Text
forall b c a. (b -> c) -> (a -> b) -> a -> c
. a -> String
forall a. Show a => a -> String
show