polysemy-log-0.2.2.4: Polysemy Effects for Logging
Safe HaskellNone
LanguageHaskell2010

Polysemy.Log.Log

Description

 
Synopsis

Documentation

interpretLogLogMetadata :: Members [LogMetadata LogMessage, GhcTime] r => InterpreterFor Log r Source #

Interpret Log into the intermediate internal effect LogMetadata.

interpretLogMetadataDataLog :: forall a r. Members [DataLog (LogEntry a), GhcTime] r => InterpreterFor (LogMetadata a) r Source #

Interpret the intermediate internal effect LogMetadata into DataLog.

Since this adds a timestamp, it has a dependency on GhcTime. Use interpretLogMetadataDataLog' for a variant that interprets GhcTime in-place.

interpretLogMetadataDataLog' :: Members [DataLog (LogEntry a), Embed IO] r => InterpretersFor [LogMetadata a, GhcTime] r Source #

Interpret the intermediate internal effect LogMetadata into DataLog.

interpretLogDataLog :: Members [DataLog (LogEntry LogMessage), GhcTime] r => InterpreterFor Log r Source #

Interpret Log into DataLog, adding metadata information and wrapping with LogEntry.

Since this adds a timestamp, it has a dependency on GhcTime. Use interpretLogDataLog' for a variant that interprets GhcTime in-place.

interpretLogDataLog' :: Members [DataLog (LogEntry LogMessage), Embed IO] r => InterpretersFor [Log, LogMetadata LogMessage, GhcTime] r Source #

Interpret Log into DataLog, adding metadata information and wrapping with LogEntry.

interpretLogDataLogConc :: Members [DataLog (LogEntry LogMessage), Resource, Async, Race, Embed IO] r => Int -> InterpreterFor Log r Source #

Interpret Log into DataLog concurrently, adding metadata information and wrapping with LogEntry.

interpretDataLogLocal :: forall a r. (a -> a) -> (a -> Sem r ()) -> InterpreterFor (DataLog a) r Source #

Helper for maintaining context function as state that is applied to each logged message, allowing the context of a block to be modified.

interpretDataLog :: forall a r. (a -> Sem r ()) -> InterpreterFor (DataLog a) r Source #

Combinator for building DataLog interpreters that handles Local.

interpretDataLogStderrWith :: Member (Embed IO) r => (a -> Text) -> InterpreterFor (DataLog a) r Source #

Interpret DataLog by printing to stderr, converting messages to Text with the supplied function.

interpretDataLogStderr :: Show a => Member (Embed IO) r => InterpreterFor (DataLog a) r Source #

Interpret DataLog by printing to stderr, converting messages to Text by using Show.

interpretLogStderrWith :: Members [Embed IO, GhcTime] r => (LogEntry LogMessage -> Text) -> InterpreterFor Log r Source #

Interpret Log by printing to stderr, converting messages to Text with the supplied function.

interpretLogStderr :: Members [Embed IO, GhcTime] r => InterpreterFor Log r Source #

Interpret Log by printing to stderr, using the default formatter.

Since this adds a timestamp, it has a dependency on GhcTime. Use interpretLogStderr' for a variant that interprets GhcTime in-place.

interpretLogStderr' :: Member (Embed IO) r => InterpreterFor Log r Source #

Interpret Log by printing to stderr, using the default formatter, then interpreting GhcTime.