core/services/exception.py

21 lines
616 B
Python
Raw Normal View History

2024-06-04 05:10:57 +00:00
import logging
from starlette.middleware.base import BaseHTTPMiddleware
from starlette.responses import JSONResponse
logger = logging.getLogger("exception")
logging.basicConfig(level=logging.DEBUG)
class ExceptionHandlerMiddleware(BaseHTTPMiddleware):
async def dispatch(self, request, call_next):
try:
response = await call_next(request)
return response
except Exception as exc:
logger.exception(exc)
2025-05-16 06:23:48 +00:00
return JSONResponse(
{"detail": "An error occurred. Please try again later."},
status_code=500,
)