diff --git a/app/services/qualys_service.py b/app/services/qualys_service.py index f48c90e..54139be 100644 --- a/app/services/qualys_service.py +++ b/app/services/qualys_service.py @@ -70,9 +70,17 @@ def search_assets_api(db, query, field="name", operator="CONTAINS", force_refres return {"ok": False, "msg": f"Erreur API: {e}", "assets": []} if r.status_code != 200 or "SUCCESS" not in r.text: - # Inclure le début du body pour faciliter le diagnostic + # Inclure le détail Qualys (errorMessage / errorResolution sont dans le XML) + import re as _re + err_msg = "" + m = _re.search(r"([^<]+)", r.text or "") + if m: err_msg += " | errorMessage: " + m.group(1).strip() + m = _re.search(r"([^<]+)", r.text or "") + if m: err_msg += " | errorResolution: " + m.group(1).strip() + m = _re.search(r"([^<]+)", r.text or "") + if m: err_msg = " [" + m.group(1).strip() + "]" + err_msg return {"ok": False, - "msg": f"API HTTP {r.status_code} — {r.text[:200]}", + "msg": f"API HTTP {r.status_code}{err_msg}", "assets": []} assets = _parse_assets_full(r.text)