module Freckle.App.OpenTelemetry
( MonadTracer(..)
) where
import Freckle.App.Prelude
import Network.AWS.XRayClient.WAI (XRayVaultData, vaultDataFromRequest)
import Yesod.Core (HandlerFor, waiRequest)
class MonadTracer m where
getVaultData :: m (Maybe XRayVaultData)
instance MonadTracer (HandlerFor app) where
getVaultData :: HandlerFor app (Maybe XRayVaultData)
getVaultData = Request -> Maybe XRayVaultData
vaultDataFromRequest forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> forall (m :: * -> *). MonadHandler m => m Request
waiRequest