Как использовать Катип со Споком?
У меня есть приложение Spock, в которое я хотел бы добавить ведение журнала при использовании katip. Не совсем понятно, как связать их вместе. Должен ли я создавать свой собственный преобразователь, который добавляет состояние, специфичное для регистрации поверх одной из монад Спока; Должен ли я добавлять экземпляры для собственных монад Спока; или что-то совершенно другое?
Пример приложения Spock
{-# LANGUAGE OverloadedStrings #-}
module Main where
import Katip
import Web.Spock
import Web.Spock.Config
main :: IO ()
main = do
spockCfg <- defaultSpockCfg () PCNoDatabase ()
runSpock 8080 (spock spockCfg app)
app :: SpockM () () () ()
app = do
get root $
-- Log something here using katip that isn't a request log entry e.g.
-- external service call.
text "ping"