diff --git a/frontend/app.py b/frontend/app.py index 7687b5f..06dbb0b 100644 --- a/frontend/app.py +++ b/frontend/app.py @@ -40,6 +40,18 @@ from api_client import ApiClient, ApiError, BACKEND_URL # --------------------------------------------------------------------------- app = FastAPI(title="VM Bench — Frontend", version="1.0.0") +# ── Request logging middleware (logs before handler, catches silent failures) ── +@app.middleware("http") +async def log_requests(request: Request, call_next): + cl = request.headers.get("content-length", "?") + logger.info("→ %s %s (body %s bytes)", request.method, request.url.path, cl) + try: + response = await call_next(request) + return response + except Exception: + logger.exception("← %s %s FAILED", request.method, request.url.path) + raise + BASE = Path(__file__).parent app.mount("/static", StaticFiles(directory=str(BASE / "static")), name="static") @@ -117,7 +129,7 @@ async def index(request: Request, vmid: Optional[int] = None, source: Optional[s @app.post("/session/upload") -async def session_upload( +def session_upload( request: Request, vmid: int = Form(...), vm_name: str = Form(""),