diff --git a/websocket_server/events/messages.py b/websocket_server/events/messages.py index 0279d0d..d7eab1b 100644 --- a/websocket_server/events/messages.py +++ b/websocket_server/events/messages.py @@ -42,6 +42,12 @@ def register_socketio_handlers(socketio): if worker_id: del connected_workers[worker_id] logger.warning(f"Worker {worker_id} disconnected") + + # Delete Redis ping keys to prevent stale heartbeats from marking worker online + redis_client = get_redis_client() + redis_client.delete(f"ws_liveness:{worker_id}") + redis_client.delete(f"ws_latency:{worker_id}") + notify_worker_disconnect(worker_id)