Les démons vont lister les répertoires dans /var/lib/shinken/modules et vont tenter de charger chaque module.
Ce log annonce que le démon va commencer à charger ces modules un par un.
[2020-07-08 16:31:36] INFO : [broker-master ] [ modules-manager ] [ MODULE-CODE-LOADING ] [directory=architecture-export ] Starting to load the module code directory /var/lib/shinken/modules/architecture-export. |
Ensuite démon va tenter de charger le code du module.
Si le démon n'arrive pas à charger le code du module un log en ERROR sera affiché:
[2020-07-08 16:31:38] ERROR : [broker-master ] [ modules-manager ] [ MODULE-CODE-LOADING ] [directory=architecture-export] Failed to load the directory [architecture-export] as a python module. |
Si le démon ne trouve pas de fichier module.py un log en ERROR sera affiché avec le PATH du fichier:
[2020-07-08 16:31:38] ERROR : [broker-master ] [ modules-manager ] [ MODULE-CODE-LOADING ] [directory=architecture-export] - because of missing file :[PATH_DU_FICHIER]. |
Si il manque le dictionnaire Python listant les propriétés du module dans module.py un log en ERROR sera affiché:
[2020-07-08 16:31:38] ERROR : [broker-master ] [ modules-manager ] [ MODULE-CODE-LOADING ] [directory=architecture-export] Bad module file for FILE_NAME : missing properties dict. |
Si le démon à eu une exception Pyhton durant l'import le chargement du code du module un log en ERROR sera affiché avec l'exception.
[2020-07-08 16:31:38] ERROR : [broker-master ] [ modules-manager ] [ MODULE-CODE-LOADING ] [directory=architecture-export] Importing module architecture-export: EXCEPTION. |
Si le code du module chargé contient un import alors un log en WARNING sera affiché.
[2020-07-08 16:31:38] WARNING : [ broker-master ] [ modules-manager ] [ MODULE-CODE-LOADING ] [directory=architecture-export] - 'import architecture-export.my_file' will not work in your module.py file. |
Une fois les modules chargé il y a un résumé qui est affiché avec les modules éligibles à ce démon/module:
[2020-07-08 16:31:38] INFO : [broker-master ] [ modules-manager ] [ MODULE-CODE-LOADING ] A total of 9 Shinken Enterprise modules are available for this daemon/module (broker): broker-module-livedata, event-container, graphite-perfdata, livestatus, simple-log, sla, trending, webui, MODULE-CODE-NAME (on a total of 40, loaded in 1.844s) |
Une fois le code python chargé, on demande au démon de créer des instances pour les modules ( les vrais objets ), de les démarrer et de démarrer son ou ces Worker(s).
Le démon va essayer de créer l'instance du module.
Si le code du module ne contient pas la fonction "get_instance()" ou qu'elle ne retourne rien un log en ERROR sera affiché:
[2020-07-08 16:31:38] ERROR : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] FAIL The module get_instance() call did not return any instance. |
Si le démon a réussi à charger le code du module mais n'a pas réussi à créer l'instance alors un log en ERROR sera affiché avec l'exception Python concerné:
[2020-07-08 16:31:38] ERROR : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] [0.046s] FAIL The module creation did fail with an exception: EXCEPTION. Remove this module currently, will try to recreate it in the future. |
Si l'instance à bien été créée alors un log en INFO sera affiché son temps de création.
[2020-07-08 16:31:38] INFO : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] [0.046s] SUCCESS The module instance is created. |
Une fois l'instance créée le démon va essayer de la démarrer.
[2020-07-08 16:31:38] INFO : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] Trying to init module. |
Si le démon a réussi à créer son n'instance mais n'a pas réussi à démarrer cette même instance alors 3 logs apparaîtrons:
Un log en ERROR expliquant que l'instance du module n'a pas réussi à ce démarrer suivant du message de l'exception Python puis de l'exception en question.
[2020-07-08 16:31:38] ERROR : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] The module failed to init and he raised an exception: EXCEPTION. |
Un log en WARNING indiquant le nombre de fois que le démon à essayer de démarrer cette instance sans succès. Le compteur se remet à zéro des lors que le démo à réussi à démarrer l'instance.
[2020-07-08 16:31:38] WARNING : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] The module tried to start: 5 times. |
Un log en WARNING indiquant quand est-ce que le démon va essayer de redémarrer l'instance (Maximum une minute).
[2020-07-08 16:31:38] WARNING : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] The module will try to restart at 16:32:18. |
Un log en INFO apparaîtra si le démon a réussi à démarrer l'instance du module.
[2020-07-08 16:31:38] INFO : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] SUCCESS The module is started. |
Le module n'a pas réussi à se démarrer . Une exception Python à été trouvé pendant le démarrage du module.
[2020-07-08 16:31:38] INFO : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] Starting a worker(s). |
[2020-07-08 16:31:38] INFO : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] SUCCESS The worker(s) is created. |
[2020-07-08 16:31:38] INFO : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] SUCCESS The worker(s) is created. |
Le module n'a pas réussi à démarrer son ou ses Worker(s).
[2020-07-08 16:31:38] ERROR : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] The worker(s) failed to init. |
Le module n'a pas réussi à démarrer son ou ses Worker(s) et une exception Python à été trouvé pendant le démarrage du ou des Worker(s).
[2020-07-08 16:31:38] ERROR : [broker-master ] [ modules-manager ] [ MODULE-INSTANCE-CREATION ] [module type=webui ] [name=WebUI ] The worker(s) failed to init and he raised an exception: EXCEPTION. |
La création de l'instance du module à échoué. Une exception Python à été trouvé pendant la création de l'instance. Le module sera re-créée dans le futur (Max: 1 minute).
La création de l'instance du module à échoué. La fonction get_instance() du module n'a rien retourné.
Une fois les instances créées, on leur demande de se préparer ( ouvrir leurs connexions, lancer les processus pour les modules externes ou avec des workers, etc ).
Ceci sera de l'ordre de la seconde pour le cas des modules avec workers ( il faut créer les queues de connexions, lancer les processus et le manager de queue, etc ).
Quand l'initialisation est finie, un log INFO est affiché.
[2020-07-08 16:31:39] INFO : [broker-master ] [ modules-manager ] [ MODULE-CHANGE ] [name=WebUI] Configuration of the module did change so we restart it. |
[2020-07-08 16:31:39] INFO : [broker-master ] [ modules-manager ] [MODULE-CHANGE ] [name=WebUI] Removing the module because it is remove from the configuration. |
[2020-07-08 16:31:39] INFO : [broker-master ] [ modules-manager ] [ MODULE-CHANGE ] [name=WebUI] Launching a new module as it was added in the daemon configuration. |
[2020-07-08 16:31:39] WARNING : [broker-master ] [ modules-manager ] [ MODULE-CHANGE ] [name=WebUI] Trying to remove the module %s but it is not found in the current instances: INSTANCES |
[2020-07-08 16:31:39] ERROR : [broker-master ] [ modules-manager ] [ MODULE-CHANGE ] [name=WebUI] Cannot find previous or new module definition for the module name WebUI, so cannot update it. |
[2020-07-08 16:31:39] DEBUG : [ broker-master ] [ modules-manager ] [ MODULE-CHANGE ] [name=WebUI] The module did change its configuration. We restart it to take the new configuration. |
[2020-07-08 16:31:39] DEBUG : [ broker-master ] [ modules-manager ] [ MODULE-CHANGE ] [module type=webui ] [name=WebUI] Ask stop process. |
[2020-07-08 16:31:39] DEBUG : [ broker-master ] [ modules-manager ] [ MODULE-CHANGE ] [module type=webui ] [name=WebUI] Stop process done. |
Quand un module est enlevé de la configuration d'un démon, celui-ci l'affichera avec une entrée MODULES-CHANGE en INFO comme quoi le module est stopped:
Quand la configuration d'un module change (ou la configuration d'un de ses sous-modules) alors le module est redémarré (et ses processus redémarrés si besoin). Ceci est loggué avec une entrée MODULES-CHANGE en INFO comme quoi le module est restarted: