The logging package
logging is a wrapper around monad-logger and fast-logger which makes it easy to log from any MonadLogger environment, or from IO. It provides the following conveniences on top of those libraries:
A MonadLogger instance for IO. Usually this is bad for libraries, but can be very convenient for application writers who know they always want to log from IO to the console. If you need to log to other sources, or to make logging compile-time optional, use monad-logger directly.
A set of shorter functions to type: debug, log, warn, plus others that flush after each message, or which allow providing a message source string.
Logging variants of error, trace and traceShow, called errorL, traceL and traceShowL. These use unsafePerformIO in order to act as direct replacements, so the usual caveats apply.
A global function, setDebugLevel, which uses a global IORef to record the logging level, saving you from having to carry around the notion of verbosity level in a Reader environment.
A set of timed variants, timedLog and timedDebug, which report how long the specified action took to execute in wall-clock time.
|Versions||1.0.0, 1.1.0, 1.2.0, 1.3.0, 1.4.0, 1.4.1, 2.1.0, 2.2.0|
|Change log||None available|
|Dependencies||base (>=3 && <5), binary (>=0.5.1.1), bytestring (>=0.9.2.1), fast-logger (>=2.1.5), lifted-base (>=0.2.2.0), monad-control (>=0.3.2.3), monad-logger (>=0.3.4.0), old-locale (>=220.127.116.11), pcre-light (>=0.4), text (>=0.11.3.1), time (>=1.4), transformers (>=0.3.0.0) [details]|
|Source repository||head: git clone git://github.com/jwiegley/logging.git|
|Uploaded||Fri Apr 24 16:16:53 UTC 2015 by JohnWiegley|
|Downloads||1151 total (64 in last 30 days)|
|Status||Docs available [build log]|
Last success reported on 2015-04-24 [all 1 reports]
For package maintainers and hackage trustees