From a6c0633582d90c95e6f4ac95cc832cb8aec6e010 Mon Sep 17 00:00:00 2001 From: Ryan Cross Date: Fri, 4 Oct 2024 16:39:55 -1000 Subject: [PATCH] fix: improve logging for message API --- backend/mlarchive/archive/api.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/backend/mlarchive/archive/api.py b/backend/mlarchive/archive/api.py index c3d93f20..64fdb0cf 100644 --- a/backend/mlarchive/archive/api.py +++ b/backend/mlarchive/archive/api.py @@ -8,6 +8,7 @@ import jsonschema import re import os +import sys import tempfile from django.conf import settings @@ -238,15 +239,17 @@ def post(self, request, **kwargs): logger.error(msg) return self._err(400, msg) except Exception: - msg = 'Invalid request format' - logger.error(msg) + exc_type, exc_value, exc_traceback = sys.exc_info() + logger.error(f"Exception type: {exc_type}, Exception message: {exc_value}", exc_info=True) + msg = f'Error processing request. ({exc_value})' return self._err(400, msg) try: message = base64.b64decode(payload["message"], validate=True) except binascii.Error: - msg = 'Invalid message: bad base64 encoding' - logger.error(msg) + exc_type, exc_value, exc_traceback = sys.exc_info() + logger.error(f"Exception type: {exc_type}, Exception message: {exc_value}", exc_info=True) + msg = f'Invalid message: bad base64 encoding ({exc_value})' return self._err(400, msg) list_name = payload["list_name"]