Size: a a a

2020 May 29

YS

Yan Shkurinskiy in Haskell
из Handler в свою)
источник

AV

Alexander Vershilov in Haskell
у меня ьыл хоистсервер делающий IO
источник

MK

Maxim Koltsov in Haskell
Yan Shkurinskiy
из Handler в свою)
может наоборот?
источник

YS

Yan Shkurinskiy in Haskell
точно
источник

AV

Alexander Vershilov in Haskell
Но потом я забил на это
источник

MK

Maxim Koltsov in Haskell
Alexander Vershilov
у меня ьыл хоистсервер делающий IO
hoistServer liftIO ? )
источник

AV

Alexander Vershilov in Haskell
Ну + работа и исключениями
источник

AV

Alexander Vershilov in Haskell
так что try + немного обработки
источник

MK

Maxim Koltsov in Haskell
а, ты их кетчишь и в сервантеррор кладёшь?
источник

MK

Maxim Koltsov in Haskell
интересно
источник

AV

Alexander Vershilov in Haskell
Да
источник

MK

Maxim Koltsov in Haskell
я только логирую уже в хендлере варпа
источник

AV

Alexander Vershilov in Haskell
Но потом я стал делать middleware
источник

AV

Alexander Vershilov in Haskell
try (next req resp) >>= \case
 Left s -> case s of
   ServantException e -> do
     when (errHTTPCode e > 404 && errHTTPCode e /= 407) $
       liftIO $ logErr lenv $ "Servant exception: " <> showLS e
     resp $ responseServerError e
  ...
источник

MK

Maxim Koltsov in Haskell
где-то я это уже видел...
источник

AV

Alexander Vershilov in Haskell
Там разбираются известные исключения пишется соответсвующий лог и они заворачиваются в responseServerError
источник

AV

Alexander Vershilov in Haskell
Где?
источник

MK

Maxim Koltsov in Haskell
источник

MK

Maxim Koltsov in Haskell
я как раз тут днём ругался на эти костыли
источник

MK

Maxim Koltsov in Haskell
поэтому и хочу наконец пропихнуть в основной сервант НОРМАЛЬНОЕ
источник