ui(qualys/agents): bloc Etat checklist OK/KO en tete (connectivite/disque/service/install) + log systeme 10 lignes
This commit is contained in:
parent
7f8c2c710b
commit
67bd3a02d6
@ -941,8 +941,38 @@ def audit_qualys_agent_only(hostname):
|
||||
# Analyser les sorties pour suggerer des resolutions
|
||||
if result["status"] == "OK":
|
||||
result["suggestions"] = _analyze_qualys_audit(result)
|
||||
|
||||
# Resume binaire pour la checklist en tete de page
|
||||
s_conn = (result.get("qualys_connectivity") or "")
|
||||
s_disk = (result.get("disk_space") or "")
|
||||
s_status = (result.get("agent_status") or "").lower()
|
||||
s_ver = (result.get("agent_version") or "")
|
||||
s_sys = (result.get("system_log") or "")
|
||||
|
||||
result["check_connectivity"] = "Connectivité OK" in s_conn
|
||||
result["check_disk"] = " 100%" not in s_disk
|
||||
result["check_service"] = "active (running)" in s_status or \
|
||||
("running" in s_status and "active" in s_status)
|
||||
result["check_installed"] = bool(re.search(r"qualys-cloud-agent[-\s]\d", s_ver))
|
||||
|
||||
# Ligne saturee si disque KO
|
||||
result["disk_saturated_line"] = ""
|
||||
if not result["check_disk"]:
|
||||
for ln in s_disk.split("\n"):
|
||||
if " 100%" in ln:
|
||||
result["disk_saturated_line"] = ln.strip()
|
||||
break
|
||||
|
||||
# Garder seulement les 10 dernieres lignes du log systeme
|
||||
sys_lines = [l for l in s_sys.split("\n") if l.strip()]
|
||||
result["system_log"] = "\n".join(sys_lines[-10:])
|
||||
else:
|
||||
result["suggestions"] = []
|
||||
result["check_connectivity"] = False
|
||||
result["check_disk"] = False
|
||||
result["check_service"] = False
|
||||
result["check_installed"] = False
|
||||
result["disk_saturated_line"] = ""
|
||||
|
||||
return result
|
||||
|
||||
|
||||
@ -60,6 +60,17 @@
|
||||
|
||||
{% if audit.status == 'OK' %}
|
||||
|
||||
<!-- État (checklist binaire) -->
|
||||
<div class="card p-4 mb-4">
|
||||
<h3 class="text-sm font-bold text-cyber-accent mb-3">État</h3>
|
||||
<table class="w-full text-xs">
|
||||
<tr><td class="p-1">Connectivité Qualys</td><td class="p-1 text-right">{% if audit.check_connectivity %}<span class="text-cyber-green font-bold">✓ OK</span>{% else %}<span class="text-cyber-red font-bold">✗ KO</span>{% endif %}</td></tr>
|
||||
<tr><td class="p-1">Espace disque</td><td class="p-1 text-right">{% if audit.check_disk %}<span class="text-cyber-green font-bold">✓ OK</span>{% else %}<span class="text-cyber-red font-bold">✗ KO</span> <span class="text-gray-400 ml-2">{{ audit.disk_saturated_line }}</span>{% endif %}</td></tr>
|
||||
<tr><td class="p-1">Service Qualys</td><td class="p-1 text-right">{% if audit.check_service %}<span class="text-cyber-green font-bold">✓ OK</span>{% else %}<span class="text-cyber-red font-bold">✗ KO</span>{% endif %}</td></tr>
|
||||
<tr><td class="p-1">Agent installé</td><td class="p-1 text-right">{% if audit.check_installed %}<span class="text-cyber-green font-bold">✓ OK</span>{% else %}<span class="text-cyber-red font-bold">✗ KO</span>{% endif %}</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
{% if audit.suggestions %}
|
||||
<!-- Diagnostic -->
|
||||
<div class="card p-4 mb-4" style="border:1px solid #00ffc8;background:rgba(0,255,200,0.05)">
|
||||
@ -153,10 +164,10 @@
|
||||
<pre style="background:#0b0f1a;color:#e5e7eb;padding:10px;border-radius:4px;font-size:11px;overflow-x:auto;max-height:400px;white-space:pre-wrap">{{ audit.agent_log or '(vide)' }}</pre>
|
||||
</div>
|
||||
|
||||
<!-- Log système -->
|
||||
<!-- Log système (10 dernières lignes) -->
|
||||
<div class="card p-4 mb-4">
|
||||
<h3 class="text-sm font-bold text-cyber-accent mb-2">Log système (journalctl / messages)</h3>
|
||||
<pre style="background:#0b0f1a;color:#e5e7eb;padding:10px;border-radius:4px;font-size:11px;overflow-x:auto;max-height:400px;white-space:pre-wrap">{{ audit.system_log or '(vide)' }}</pre>
|
||||
<h3 class="text-sm font-bold text-cyber-accent mb-2">Log système (10 dernières lignes)</h3>
|
||||
<pre style="background:#0b0f1a;color:#e5e7eb;padding:10px;border-radius:4px;font-size:11px;overflow-x:auto;white-space:pre-wrap">{{ audit.system_log or '(vide)' }}</pre>
|
||||
</div>
|
||||
|
||||
{% else %}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user