From 92cd4976f5b9f968ca916b1421269cf5f3a3098d Mon Sep 17 00:00:00 2001 From: "anastasiia.leshkevych" Date: Tue, 16 Nov 2021 13:27:27 +0200 Subject: [PATCH] fix(swift): add error handler for client response --- Dockerfile | 2 +- src/prozorro_sale/document_service/utils.py | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 8009746..5ceff04 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3-slim as base +FROM python:3.9-slim as base WORKDIR /document_service ENV PYTHONUNBUFFERED True diff --git a/src/prozorro_sale/document_service/utils.py b/src/prozorro_sale/document_service/utils.py index d1eab19..b1f5d6a 100644 --- a/src/prozorro_sale/document_service/utils.py +++ b/src/prozorro_sale/document_service/utils.py @@ -2,7 +2,7 @@ import sys import asyncio from aiohttp import web -from aiohttp.client_exceptions import ClientConnectorError, ServerTimeoutError, ClientPayloadError +from aiohttp.client_exceptions import ClientConnectorError, ClientPayloadError, ClientResponseError, ServerTimeoutError from aiohttp.web_response import Response from prozorro_sale.document_service import errors @@ -55,6 +55,12 @@ async def excepts_errors_middleware(request, handler): data={'error': 'Remote storage broken. Please try again later.'}, status=424 ) + except ClientResponseError as ex: + LOG.warning(f'Storage response error:\n{ex}', stack_info=False) + return web.json_response( + data={'error': 'Remote storage response cannot be parsed. Please try again later.'}, + status=424 + ) def critical(func): -- GitLab