Improve backend restart reliability for improved system stability
Update backend check script to handle user permissions for systemctl restarts and add fallback process checking. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 7a657272-55ba-4a79-9a2e-f1ed9bc7a528 Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Event-Id: e3c3b9b2-fba8-4fc9-b4fb-ac39615693a8 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/449cf7c4-c97a-45ae-8234-e5c5b8d6a84f/7a657272-55ba-4a79-9a2e-f1ed9bc7a528/4aeldgV
This commit is contained in:
parent
b18e0a51e1
commit
88b0dd7472
@ -2,6 +2,7 @@
|
||||
# =========================================================
|
||||
# CHECK BACKEND - Verifica e riavvia backend Python se necessario
|
||||
# Usa systemctl per gestire il servizio (con virtual environment)
|
||||
# Nota: questo script può girare come root o come user ids
|
||||
# =========================================================
|
||||
|
||||
LOG_FILE="/var/log/ids/backend.log"
|
||||
@ -11,18 +12,28 @@ mkdir -p /var/log/ids
|
||||
# Check if systemd service is active
|
||||
if systemctl is-active --quiet ids-ml-backend; then
|
||||
exit 0
|
||||
else
|
||||
echo "[$(date)] Backend Python NON attivo, riavvio via systemctl..." >> "$LOG_FILE"
|
||||
fi
|
||||
|
||||
# Restart via systemctl (usa il venv configurato nel service)
|
||||
# Verifica anche se il processo Python è attivo (fallback)
|
||||
if pgrep -f "python.*main.py" > /dev/null; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "[$(date)] Backend Python NON attivo, riavvio..." >> "$LOG_FILE"
|
||||
|
||||
# Prova prima con systemctl (funziona se eseguito come root o con sudo configurato)
|
||||
if [ "$(id -u)" -eq 0 ]; then
|
||||
systemctl restart ids-ml-backend
|
||||
else
|
||||
# Se non siamo root, prova con sudo (richiede sudoers configurato)
|
||||
sudo systemctl restart ids-ml-backend 2>/dev/null
|
||||
fi
|
||||
|
||||
# Wait for startup
|
||||
sleep 3
|
||||
sleep 5
|
||||
|
||||
if systemctl is-active --quiet ids-ml-backend; then
|
||||
echo "[$(date)] Backend riavviato con successo via systemctl" >> "$LOG_FILE"
|
||||
if systemctl is-active --quiet ids-ml-backend || pgrep -f "python.*main.py" > /dev/null; then
|
||||
echo "[$(date)] Backend riavviato con successo" >> "$LOG_FILE"
|
||||
else
|
||||
echo "[$(date)] ERRORE: Backend non si è avviato. Controlla: journalctl -u ids-ml-backend" >> "$LOG_FILE"
|
||||
fi
|
||||
fi
|
||||
|
||||
Loading…
Reference in New Issue
Block a user