From 5a37da07be073e6c48af315105a7b43bc42bded1 Mon Sep 17 00:00:00 2001 From: Jean-Paul Calderone <exarkun@twistedmatrix.com> Date: Fri, 30 Aug 2019 11:52:47 -0400 Subject: [PATCH] Get HTTP logs on stdout --- PaymentServer.cabal | 2 ++ src/PaymentServer/Main.hs | 17 ++++++++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/PaymentServer.cabal b/PaymentServer.cabal index a765653..b29d04b 100644 --- a/PaymentServer.cabal +++ b/PaymentServer.cabal @@ -23,6 +23,8 @@ library , servant , servant-server , wai + , wai-extra + , data-default , warp , stripe-core , text diff --git a/src/PaymentServer/Main.hs b/src/PaymentServer/Main.hs index 060502b..cf965e6 100644 --- a/src/PaymentServer/Main.hs +++ b/src/PaymentServer/Main.hs @@ -6,6 +6,9 @@ module PaymentServer.Main ( main ) where +import Data.Default + ( def + ) import Servant ( Proxy(Proxy) , Server @@ -16,6 +19,14 @@ import Servant import Network.Wai.Handler.Warp ( run ) +import Network.Wai.Middleware.RequestLogger + ( OutputFormat(Detailed, CustomOutputFormatWithDetails) + , outputFormat + , mkRequestLogger + ) +import Network.Wai.Middleware.RequestLogger.JSON + ( formatAsJSON + ) import PaymentServer.Persistence ( VoucherDatabase , memory @@ -37,4 +48,8 @@ paymentServerApp :: VoucherDatabase d => d -> Application paymentServerApp = (serve paymentServerAPI) . paymentServer main :: IO () -main = memory >>= return . paymentServerApp >>= run 8081 +main = do + db <- memory + let app = paymentServerApp db + logger <- mkRequestLogger $ def { outputFormat = Detailed True} + run 8081 $ logger app -- GitLab