Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- addThreadContext :: [Pair] -> Middleware
- addThreadContextFromRequest :: (Request -> [Pair]) -> Middleware
- requestLogger :: HasLogger env => env -> Middleware
- requestLoggerWith :: HasLogger env => Config -> env -> Middleware
- data Config
- defaultConfig :: Config
- setConfigLogSource :: LogSource -> Config -> Config
- setConfigGetDestinationIp :: (Request -> Maybe Text) -> Config -> Config
Documentation
addThreadContext :: [Pair] -> Middleware Source #
Add context to any logging done from the request-handling thread
addThreadContextFromRequest :: (Request -> [Pair]) -> Middleware Source #
addThreadContext
, but have the Request
available
requestLogger :: HasLogger env => env -> Middleware Source #
Log requests (more accurately, responses) as they happen
In JSON format, logged messages look like:
{ ... message: { text: "GET foobar => 200 OK", meta: { method: GET, path: "foobar", query: "?baz=bat&quix=quo", status: { code: 200, message: OK }, durationMs: 1322.2, requestHeaders: { Authorization: "***", Accept: "text/html", Cookie: "***" }, responseHeaders: { Set-Cookie: "***", Expires: "never" } } } }
requestLoggerWith :: HasLogger env => Config -> env -> Middleware Source #