patdie421 / mea-edomus

Automatically exported from code.google.com/p/mea-edomus
0 stars 0 forks source link

MEA-EDOMUS : mettre en place un watchdog #23

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Détecter les blocages de threads et redemarrer "à froid" en cas d'anomalie (1 
thread + 2 process)

Original issue reported on code.google.com by patrice....@gmail.com on 9 Jun 2013 at 2:01

GoogleCodeExporter commented 9 years ago

Original comment by patrice....@gmail.com on 10 Jun 2013 at 12:42

GoogleCodeExporter commented 9 years ago

Original comment by patrice....@gmail.com on 17 Jun 2013 at 11:03

GoogleCodeExporter commented 9 years ago

Original comment by patrice....@gmail.com on 17 Jun 2013 at 9:40

GoogleCodeExporter commented 9 years ago

Original comment by patrice....@gmail.com on 23 Sep 2013 at 2:17

GoogleCodeExporter commented 9 years ago

Original comment by patrice....@gmail.com on 6 Oct 2014 at 8:03

GoogleCodeExporter commented 9 years ago
A traiter par le monitoring server ...

Original comment by patrice....@gmail.com on 6 Oct 2014 at 8:05

GoogleCodeExporter commented 9 years ago
Dans monitoring server prévoir

Monitoring server gère une liste des process à surveiller.
Pour chaque process à surveiller une liste d'"indicateurs" est déclarée par 
le process qui doit être surveiller.

Une fonction "registerNewProcess" permet à un process de se déclarer à 
monitor server. Cette fonction aloue et initialise un descripteur dans la liste 
des process à surveiller. Le pointeur sur ce descripteur est retourné par la 
fonction registerNewProcess.

Dans le descripteur du process à surveiller on trouve :
- des éléments du le process (nom, date de dernière modif ...)
- une liste des indicateurs que le process met à disposition de la 
surveillance. Cette liste est alimenter par une fonction "addNewIndicator" 
(add(descripteur, "nom", (void *)valeur, fonction valeurToString, ...)
valeur est libre, la fonction valeurToString permet d'en obtenir une valeur 
lisible.
Une fonction "register" qui permet à un process de se déclérer "à 
surveiller".
Cette fonction retourne un pointeur sur une structure contenant :
- nom
- last (date du dernier acces en maj)
- liste d'indicateurs
Un fonction "add" qui ajoute un indicateur à surveiller
Un fonction "update"(nom_indicateur)

Ensuite un "updateIndicator(id_indicateur, valeur) permet de mettre à jour la 
valeur.

Prévoir aussi un fonction hearthbeat() pour mettre à jour la date d'accès 
(utiliser pour le watch doc).

Original comment by patrice....@gmail.com on 6 Oct 2014 at 3:10

GoogleCodeExporter commented 9 years ago
Definir ce qu'il faut faire lorsque le watchdog est déclenché.

- associer une fonction "stop" et une fonction "start" au descripteurs de 
surveillance
- en cas de déclenchement du watch dog on stop/start. Si après start toujours 
KO on arrête tout pour déclencher un redémarrage ?

Original comment by patrice....@gmail.com on 9 Oct 2014 at 11:29

GoogleCodeExporter commented 9 years ago
Séparer le watch dog de l'envoie des infos aux navigateurs et utiliser le 
watchdog pour relancer automatiquement les process KO.

Original comment by patrice....@gmail.com on 30 Oct 2014 at 12:24

GoogleCodeExporter commented 9 years ago

Original comment by patrice....@gmail.com on 2 Nov 2014 at 12:10