From a7abc724beba03356e24e88cfd04c8eabbdedf47 Mon Sep 17 00:00:00 2001 From: Macky Date: Thu, 1 Oct 2026 20:56:16 +0700 Subject: [PATCH] =?UTF-8?q?fix(analysis):=20log=20exceptions=20on=20analys?= =?UTF-8?q?is=20failure=20=E2=80=94=20was=20silently=20swallowed?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/api/group_routes.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/backend/app/api/group_routes.py b/backend/app/api/group_routes.py index 7bd2fe9..4e15bdd 100644 --- a/backend/app/api/group_routes.py +++ b/backend/app/api/group_routes.py @@ -737,6 +737,7 @@ def _run_analysis(app, gid: str, inp: dict, persona_channel: str, llm) -> None: channel=inp.get("channel", "social"), ) except Exception: + app.logger.exception("analysis failed for group %s (sales kit)", gid) s["groups"].update(gid, status="failed", error="analysis_failed") return try: @@ -752,6 +753,7 @@ def _run_analysis(app, gid: str, inp: dict, persona_channel: str, llm) -> None: raise ValueError("persona generation returned malformed personas") personas = [persona for persona in personas if persona is not None] except Exception: + app.logger.exception("analysis failed for group %s (persona generation)", gid) s["groups"].update(gid, status="failed", error="analysis_failed") return @@ -765,6 +767,7 @@ def _run_analysis(app, gid: str, inp: dict, persona_channel: str, llm) -> None: try: report = build_report(sales_kit=sales_kit, personas=personas, language=inp.get("language", "th")) except Exception: + app.logger.exception("analysis failed for group %s (report)", gid) s["groups"].update(gid, status="failed", error="analysis_failed") return # Publish the completed analysis as one atomic record replacement. Readers @@ -778,6 +781,7 @@ def _run_analysis(app, gid: str, inp: dict, persona_channel: str, llm) -> None: report=report, ) except (TypeError, ValueError): + app.logger.exception("analysis failed for group %s (publish)", gid) s["groups"].update(gid, status="failed", error="analysis_failed")