Blammo-1.0.2.2: Batteries-included Structured Logging library
Safe HaskellNone
LanguageHaskell2010

Network.Wai.Middleware.Logging

Synopsis

Documentation

addThreadContext :: [Pair] -> Middleware Source #

Add context to any logging done from the request-handling thread

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"
      }
    }
  }
}

Configuration

setConfigLogSource :: LogSource -> Config -> Config Source #

Change the source used for log messages

Default is requestLogger.

setConfigGetDestinationIp :: (Request -> Maybe Text) -> Config -> Config Source #

Change how the destinationIp field is determined

Default is looking up the x-real-ip header.