h$#       !"#$%&'()*+,-./0123456789:;<=>?@ABCDE F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a None #$>? log-base Represents message to be logged.log-baseComponent of an application.log-baseApplication log domain.log-baseTime of the logged event.log-base Log level. log-baseMessage to be logged. log-base,Additional data associated with the message. log-baseAvailable log levels.log-baseThis function is partial.log-base Render a  to Text.log-base+The time that message was added to the log.log-baseThe actual message.    None #$>? log-baseAn object used for communication with a logger thread that outputs s using e.g. PostgreSQL, Elasticsearch or stdout (depending on the back-end chosen).blog-base Output a .clog-baseWait for the logger to output all messages in its input queue (in the case logging is done asynchronously).dlog-baseKill the logger thread. Subsequent attempts to write messages to the logger will raise an exception.log-baseExecute logger to serialize a . log-baseWait until all /s stored in the internal queue are serialized.!log-base0Shutdown the logger thread associated with this 9 object. Subsequent attempts to write messages via this  will result in an exception.elog-basef-like execution of an g: action, verifying all messages are properly logged. See  mkBulkLogger.hlog-baseComposition of  objects. ibcd !eNone #$>?"log-baseCreate an in-memory logger for the duration of the given action, returning both the result of the action and the logger's output as a Text value afterwards.""None #$>? $log-baseCreate a new, empty list.%log-base%Retrieve messages stored in the list.&log-basePut a message into the list.'log-baseClear the list.(log-base3Creates a logger that stores messages in the given #.#$%&'(#$%&'(None #$>? *log-baseThe state that every LogT carries around.,log-baseThe  to use.-log-baseCurrent application component..log-baseCurrent application domain./log-base:Additional data to be merged with the log message's data.0log-baseStart a logger thread that consumes one queued message at a time.Note: a bounded queue of size 1000000 is used internally to avoid unrestricted memory consumption.1 log-baseLike 2#, but with configurable queue size.2log-baseStart an asynchronous logger thread that consumes all queued messages once per second.Note: a bounded queue of size 1000000 is used internally to avoid unrestricted memory consumption.To make sure that the messages get written out in the presence of exceptions, use high-level wrappers like e,   or  $ instead of this function directly.Note: some messages can be lost when the main thread shuts down without making sure that all logger threads have written out all messages, because in that case child threads are not given a chance to clean up by the RTS. This is apparently a feature: https://mail.haskell.org/pipermail/haskell-cafe/2014-February/112754.htmlTo work around this issue, make sure that the main thread doesn't exit until all its children have terminated. The async package makes this easy.Problematic example: import Control.Concurrent.Async main :: IO () main = do logger <-   a <-  (  $ \logger ->   "main" logger $  "foo") -- Main thread exits without waiting for the child -- to finish and without giving the child a chance -- to do proper cleanup. Fixed example: import Control.Concurrent.Async main :: IO () main = do logger <-   a <-  (  $ \logger ->   "main" logger $  "foo")  a -- Main thread waits for the child to finish, giving -- it a chance to shut down properly. This works even -- in the presence of exceptions in the child thread. 3log-baseLike 24, but with configurable queue size and thread delay.3log-base queue capacity (default 1000000)log-base,thread delay (microseconds, default 1000000)log-base logger namelog-basewritelog-baseflush !*+,-./0123*+,-./0123 !None #$>? 4log-baseRepresents the family of monads with logging capabilities. Each 4 carries with it some associated state (the logging environment) that can be modified locally with 6 and 7.5log-baseWrite a message to the log.6log-baseExtend the additional data associated with each log message locally.7log-base.Extend the current application domain locally.8log-base Get current * object. Useful for construction of logging functions that work in a different monad, see  getLoggerIO as an example.9log-baseLog a message and its associated data using current time as the event time and the   log level.:log-baseLog a message and its associated data using current time as the event time and the   log level.;log-baseLog a message and its associated data using current time as the event time and the  log level.<log-baseLike 9-, but without any additional associated data.=log-baseLike :-, but without any additional associated data.>log-baseLike ;-, but without any additional associated data.?log-baseGeneric, overlapping instance.5log-base Log level.log-base Log message.log-base,Additional data associated with the message. 456789:;<=> 456789:;<=>None #$>?@log-baseCreate an asynchronouis logger thread that prints messages to standard output once per second for the duration of the given action. Flushes j on each bulk write.Alog-baseCreate a bulk logger that prints messages in the JSON format to standard output once per second for the duration of the given action. Flushes j on each bulk write.@A@ANone #$>?zBlog-baseCreate a simple, synchronous logger that prints messages to standard output and flushes j on each call to b' for the duration of the given action.Clog-baseCreate a logger that prints messages to standard output for the duration of the given action.Dlog-baseCreate a logger that prints messages in the JSON format to standard output for the duration of the given action.BCDBCD None #$>? QElog-baseMonad transformer that adds logging capabilities to the underlying monad.Ilog-baseRun a E computation.3Note that in the case of asynchronous/bulk loggers I doesn't guarantee that all messages are actually written to the log once it finishes. Use  withPGLogger or withElasticSearchLogger for that.Jlog-base#Transform the computation inside a E.Klog-baseBase implementation of 5 for use with a specific *!. Useful for reimplementation of 4 instance.Llog-base9Return an IO action that logs messages using the current 49 context. Useful for interfacing with libraries such as aws or amazonka0 that accept logging callbacks operating in IO.Qlog-base k = JIlog-base"Application component name to use.log-baseThe logging back-end to use.log-baseThe E computation to run.*+,-./EFGHIJKL*+,-./HEFGIJKLNone #$>? 3    !*+/.,-0123487569:;<=>EFGHIJKL !"#$%&'()*+,-./012345 6 7 8 9:;<=>?@ABBCDEFGHIJKLMNOPQRSTU VWXY Z Z [ \  ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w xyz{|}~  6y(log-base-0.10.0.0-AyruwwGyJq37L33SRtcuIq Log.ClassLogLog.Data Log.LoggerLog.Backend.TextLog.Backend.LogListLog.Backend.StandardOutput.BulkLog.Backend.StandardOutput Log.MonadLog.Internal.LoggerLog.Backend.ElasticSearchwithElasticSearchLoggerwithBulkStdOutLoggerelasticSearchLoggerControl.Concurrent.AsyncasyncrunLogT logTrace_wait time-1.9.3 Data.Time.Clock.Internal.UTCTimeUTCTime$aeson-1.5.6.0-4Fai2YBAOjp98HRNOvB9PwData.Aeson.Types.ToJSON.=Data.Aeson.Types.Internalobject LogMessage lmComponentlmDomainlmTimelmLevel lmMessagelmDataLogLevel LogAttentionLogInfoLogTrace readLogLevel showLogLevelshowLogMessage$fNFDataLogLevel$fFromJSONLogLevel$fToJSONLogLevel$fNFDataLogMessage$fFromJSONLogMessage$fToJSONLogMessage$fEqLogMessage$fShowLogMessage$fBoundedLogLevel $fEqLogLevel $fOrdLogLevel$fShowLogLevelLogger execLogger waitForLoggershutdownLoggerwithSimpleTextLoggerLogList newLogList getLogList putLogList clearLogListwithLogListLogger $fEqLogList LoggerEnvleLogger leComponentleDomainleDatamkLogger mkLogger' mkBulkLogger mkBulkLogger'MonadLog logMessage localData localDomain getLoggerEnv logAttentionlogInfologTrace logAttention_logInfo_ $fMonadLogtwithBulkJsonStdOutLoggerwithSimpleStdOutLoggerwithStdOutLoggerwithJsonStdOutLoggerLogTunLogT InnerLogTmapLogT logMessageIO getLoggerIO$fMonadLogLogT$fMonadUnliftIOLogT$fMonadBaseControlbLogT$fMonadTransControlLogT$fMFunctorTYPELogT$fMonadReaderrLogT$fAlternativeLogT$fApplicativeLogT $fFunctorLogT $fMonadLogT$fMonadBasebLogT$fMonadCatchLogT $fMonadIOLogT$fMonadMaskLogT$fMonadPlusLogT$fMonadThrowLogT$fMonadTransLogT$fMonadFailLogT$fMonadErroreLogT$fMonadWriterwLogT$fMonadStatesLogTloggerWriteMessageloggerWaitForWriteloggerShutdown withLoggerbaseControl.Exception.Basebracketghc-prim GHC.TypesIO$fMonoidLoggerGHC.IO.Handle.FDstdout#mmorph-1.1.5-7jVXMTfUGz5EvY5mKxMGqvControl.Monad.Morphhoist