Update system_monitor.py

This commit is contained in:
2026-09-09 12:11:38 +02:00
parent 8a4a8797c4
commit 559d6cd177
+18 -1
View File
@@ -445,11 +445,28 @@ def on_message(client, userdata, msg):
publish_all_ini_files(client)
def auto_publish_task(client):
disconnect_counter = 0
update_interval = cfg['settings'].get('update_interval', 30)
while True:
if not client.is_connected():
disconnect_counter += 1
logger.warning(f"⚠️ Broker MQTT irraggiungibile. Watchdog {disconnect_counter}/5...")
# Dopo ~2.5 minuti di disconnessione (5 tentativi x 30s), killa il processo
if disconnect_counter >= 5:
logger.error("🚨 Connessione persa definitivamente. Chiusura forzata per riavvio tramite systemd...")
os._exit(1)
else:
if disconnect_counter > 0:
logger.info("✅ Connessione MQTT ripristinata spontaneamente.")
disconnect_counter = 0
status = publish_all(client)
publish_all_ini_files(client)
check_auto_healing(client, status)
time.sleep(cfg['settings'].get('update_interval', 30))
time.sleep(update_interval)
def start_service():
global current_status