From 9385d048121081599c0e43769149b0c74a37a829 Mon Sep 17 00:00:00 2001 From: Bai Date: Tue, 18 Jun 2024 11:55:47 +0800 Subject: [PATCH] fix: Add API Exception traceback log if settings.DEBUG_DEV enabled --- apps/common/drf/exc_handlers.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/common/drf/exc_handlers.py b/apps/common/drf/exc_handlers.py index f832042a7..68b7fc113 100644 --- a/apps/common/drf/exc_handlers.py +++ b/apps/common/drf/exc_handlers.py @@ -1,9 +1,11 @@ +import traceback from logging import getLogger from django.core.exceptions import PermissionDenied, ObjectDoesNotExist as DJObjectDoesNotExist from django.db.models.deletion import ProtectedError from django.http import Http404 from django.utils.translation import gettext +from django.conf import settings from rest_framework import exceptions from rest_framework.response import Response from rest_framework.views import set_rollback @@ -29,6 +31,9 @@ def extract_object_name(exc, index=0): def common_exception_handler(exc, context): # logger.exception('') + if settings.DEBUG_DEV: + logger.exception('Print traceback exception for Debug') + traceback.print_exc() if isinstance(exc, Http404): exc = JMSObjectDoesNotExist(object_name=extract_object_name(exc, 1))