Сервер API Faust.web зависает при исключении
Я новичок в Python и Faust. Мы используем Faust.web для разработки наших API. Вроде все работает, кроме исключений.
Проблема в том, что когда мы запускаем сервер API и нажимаем API от Postman, что приводит к исключению в нашем коде, мы правильно получаем код состояния 500. Но когда мы в следующий раз обратимся к тому же API, Postman будет ждать ответа, пока API не истечет время ожидания.
@configurations.route(somevalue + '/{document_id}')
class SomeAPI(BaseView):
async def put(self, request: Request, document_id: str) -> Response:
try:
a = 10/0
except Exception as e:
logger.error(f'Error while handling PUT Request: {request}, Error: {e}', exc_info=True)
return self.json(value=HttpError.INTERNAL_SERVER_ERROR.value, status=500,
headers=self.response_headers)
else:
return self.json(value=result, status=200, headers=self.response_headers)
Пожалуйста помоги!
1 ответ
Попробуйте преобразовать ваше перехваченное исключение в строку:
logger.error(f'Error while handling PUT Request: {request}, Error: {str(e)}', exc_info=True)
В качестве альтернативы вы можете использовать
logger.exception()
.
logger.exception(f'Error while handling PUT Request: {request}, exc_info=True)