From ec8adb0907b32483db8a9f749509d4cfba7f2af9 Mon Sep 17 00:00:00 2001 From: Vladless Date: Sat, 14 Feb 2026 14:06:05 +0300 Subject: [PATCH] add logs in session middleware --- middlewares/session.py | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/middlewares/session.py b/middlewares/session.py index 83aad0d5..c933d329 100644 --- a/middlewares/session.py +++ b/middlewares/session.py @@ -15,7 +15,24 @@ class SessionMiddleware(BaseMiddleware): data["session"] = session try: result = await handler(event, data) - await session.commit() + try: + await session.commit() + except Exception as commit_err: + handler_name = getattr(handler, "__qualname__", getattr(handler, "__name__", str(handler))) + event_type = type(event).__name__ + logger.warning( + "Session commit failed, rollback performed — handler=%s, event=%s, error=%s: %s", + handler_name, + event_type, + type(commit_err).__name__, + commit_err, + exc_info=True, + ) + try: + await session.rollback() + except Exception: + pass + raise commit_err return result except Exception as e: handler_name = getattr(handler, "__qualname__", getattr(handler, "__name__", str(handler)))