corrections

This commit is contained in:
2026-03-07 15:12:47 +01:00
parent 45400c190c
commit 5e2b2be4ef
2 changed files with 25 additions and 14 deletions

View File

@@ -102,21 +102,25 @@ if [ "$ZOMBIES" -gt 0 ]; then
fi
# ------------------------------------------------
# 8. FICHIERS SUPPRIMÉS MAIS OUVERTS
# 8. FICHIERS SUPPRIMÉS MAIS OUVERTS (Filtré)
# ------------------------------------------------
# On utilise tail -n +2 pour ignorer la ligne d'en-tête de lsof
DELETED_DATA=$(sudo lsof +L1 2>/dev/null | tail -n +2)
DELETED_COUNT=$(echo -n "$DELETED_DATA" | grep -c '^' || echo 0)
# On récupère les données, puis on exclut les processus du script lui-même
# On exclut aussi souvent 'systemd-j' (journal) car il gère ses propres rotations
DELETED_DATA=$(sudo lsof +L1 2>/dev/null | tail -n +2 | grep -Ev "lsof|tail|cron|sh|systemd-j|sys_check")
if [ "$DELETED_COUNT" -gt 0 ]; then
# On extrait les noms des commandes uniques pour le rapport (ex: systemd-j, apache2)
PROCESS_NAMES=$(echo "$DELETED_DATA" | awk '{print $1}' | sort -u | tr '\n' ' ')
# On compte proprement les lignes
DELETED_COUNT=$(echo "$DELETED_DATA" | grep -v '^$' | wc -l)
if (( DELETED_COUNT > 0 )); then
# On extrait les noms des commandes uniques pour le rapport
PROCESS_NAMES=$(echo "$DELETED_DATA" | awk '{print $1}' | sort -u | xargs)
add_to_report "📂 FICHIERS SUPPRIMÉS MAIS OUVERTS : $DELETED_COUNT (Processus : $PROCESS_NAMES)"
ALERT=true
fi
# ------------------------------------------------
# 9. CONNEXIONS RÉSEAU
# ------------------------------------------------
@@ -127,16 +131,23 @@ if [ "$CONN_COUNT" -gt "$CONN_THRESHOLD" ]; then
ALERT=true
fi
# ------------------------------------------------
# 10. ERREURS RÉCENTES DANS LES LOGS
# ------------------------------------------------
LOG_ERRORS=$(journalctl -p 3 -n 20 --no-pager | wc -l)
if [ "$LOG_ERRORS" -gt 0 ]; then
add_to_report "ERREURS CRITIQUES DANS LES LOGS : $LOG_ERRORS\n"
# ------------------------------------------------
# 10. ERREURS CRITIQUES (Dernière heure)
# ------------------------------------------------
# On filtre par priorité 3 (Error) ou moins, depuis 1 heure
LOG_CONTENT=$(journalctl -p 3 --since "1 hour ago" --no-pager --quiet)
# On compte le nombre de lignes réelles
LOG_COUNT=$(echo "$LOG_CONTENT" | grep -v '^--' | grep -v '^$' | wc -l)
if (( LOG_COUNT > 0 )); then
add_to_report "📑 ERREURS CRITIQUES (Dernière heure : $LOG_COUNT) :"
add_to_report "$(echo "$LOG_CONTENT" | tail -n 15 | sed 's/^/ /')"
ALERT=true
fi
# ------------------------------------------------
# ENVOI MAIL
# ------------------------------------------------