Description
JSON-friendly Logging APIs.
Description
Convienence functions for logging ToJSON with monad-logger
README.md
Monad Logger functions for JSON
Install
As a library:
cabal install monad-logger-json
Usage (example)
{-# LANGUAGE TemplateHaskell #-}
import Control.Monad.IO.Class ( MonadIO(liftIO) )
import Control.Monad.Logger ( runStdoutLoggingT )
import Control.Monad.Logger.JSON ( logInfoJ, logDebugJ )
import Data.Aeson.TH ( defaultOptions, deriveJSON )
import Data.Time.Clock ( UTCTime, getCurrentTime )
data Message = Message { time :: UTCTime }
$( deriveJSON defaultOptions ''Message )
main :: IO ()
main =
runStdoutLoggingT
(do now <- liftIO getCurrentTime
$logDebugJ (Message now)
$logInfoJ "Hello world")