Reconnexion impossible à Gladys plus suite à coupure internet

En attendant, je pense avoir identifié le bug.

Dans Gladys Assistant 4.56, j’ai introduit une nouvelle logique d’authentification sur les Websockets, permettant une connexion plus rapide: idéal pour un accès instantané au tableau de bord sur mobile.

Le problème ? Si l’instance perd la connexion, elle tente de se reconnecter avec le même access_token utilisé lors de la première connexion. Sauf que cet access_token a expiré entre-temps et n’est pas renouvelé. J’utilise une nouvelle logique présente dans la librairie socket-io et je n’avais pas compris son fonctionnement en cas de déconnexion.

Résultat : le backend Gladys Plus rejette la connexion (JWT expiré), et l’instance entre dans une boucle infinie de reconnexion.

C’est une bonne leçon, et quelques pistes d’améliorations :

  1. Renouveler l’access_token en cas de perte de connexion pour repartir sur un jeton valide.

  2. Ajouter un délai avant la reconnexion, afin d’éviter de surcharger le serveur en cas de boucle infinie.

  3. Renforcer les tests unitaires pour mieux couvrir les scénarios de perte de connexion et éviter que ce bug ne se reproduise.

Désolé pour le dérangement !

Je vous tiens informés dès que la version 4.56.1 est disponible :slight_smile:

3 « J'aime »