Skip to content

Commit 2a3bdf8

Browse files
committed
better error handling
1 parent 2d5560e commit 2a3bdf8

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

nucleus/__init__.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ def error() -> UploadResponse:
207207
)
208208

209209
def exception_handler(request, exception):
210-
logger.error(request, exception)
210+
logger.error(exception)
211211

212212
def preprocess_payload(item):
213213
image = open(item.get(IMAGE_URL_KEY), "rb")
@@ -243,8 +243,11 @@ def preprocess_payload(item):
243243
# don't forget to close all open files
244244
map(lambda x: x[IMAGE_KEY][1].close(), payloads)
245245

246+
# response object will be None if an error occurred
246247
async_responses = [
247-
response if response.status_code == 200 else error()
248+
response
249+
if (response and response.status_code == 200)
250+
else error()
248251
for response in async_responses
249252
]
250253
responses.extend(async_responses)
@@ -267,8 +270,7 @@ def default_error(payload: dict) -> UploadResponse:
267270
)
268271

269272
def exception_handler(request, exception):
270-
logger.error(request, exception)
271-
return default_error(request.json())
273+
logger.error(exception)
272274

273275
items = payload[ITEMS_KEY]
274276
payloads = [
@@ -290,7 +292,9 @@ def exception_handler(request, exception):
290292
)
291293

292294
async_responses = [
293-
response if response.status_code == 200 else default_error(payload)
295+
response
296+
if (response and response.status_code == 200)
297+
else default_error(payload)
294298
for response, payload in zip(async_responses, payloads)
295299
]
296300

0 commit comments

Comments
 (0)