Les fichiers de log du Reactionner sont situés dans le dossier /var/log/shinken/. Pour plus d'informations, consultez la page Fichiers Logs.
Au démarrage et tous les jours à minuit, ce log indique la version ainsi que le numéro de patch cumulatif du démon.
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] Daemon version is: XX.XX.01XXrelease.fr culmulative-patch-YY |
Lors du démarrage du démon, une ligne est disponible:
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [START-DAEMON] The daemon (version=02.08.01-release.fr) is now started as a daemon (detached from any shell) with pid=15412 [YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ SYSTEM ] System resource number of open files is set to (soft:1024 / hard:1024 ) (from parameter max_file_descriptor_limit) [YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ SYSTEM ] System resource number of processes/threads is set to (soft:unlimited / hard:unlimited ) (set at system max values) |
Avec comme informations principales:
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ ACTIONS ] [ scheduler-master ] [ GET ] Requesting actions todo from this scheduler for 2.000s cpu time [received=11 notification(s) / 0 event(s) for 1.087s cpu time] |
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ ACTIONS ] [ scheduler-master ] [ RECEIVED ] We received actions todo from this scheduler for 1.000s cpu time [received=2 notification(s) / 0 event(s) for 0.160s cpu time] |
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ ACTIONS RESULTS ] [scheduler-master] [ PUSHED ] 1 action's result(s) sends to this scheduler in [0.043]s [1 notifications / 0 events] |
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ ACTIONS RESULTS ] [scheduler-master] [ GIVEN ] 1 action's result(s) given to answer scheduler request [1 notifications / 0 events] |
Lorsque le Reactionner reçoit sa configuration pour la première fois deux logs INFO sont affichés.
Le premier indiquant que nous rentrons dans la phase de chargement d'une nouvelle configuration.
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ CONFIGURATION ] ----- Loading the new configuration from the arbiter |
Le deuxième indiquant que nous avons reçu la configuration de l'Arbiter.
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ CONFIGURATION ] The arbiter send us a new configuration: [configuration_uuid=configuration-uuid, arbiter=arbiter-name, architecture=architecture-name, date=YYYY-MM-DD HH:MM:SS] |
Dans le cas où le reactionner n'est pas de la même version que l'arbiter et que l'option *mismatch_version_error* est activé sur l'arbiter:
[YYYY-MM-DD HH:MM:SS] ERROR : [ reactionner-name ] Incompatible daemon version : Your Arbiter daemon is in version [XX.XX.XX-release.fr culmulative-patch-YY] while this daemon is in version [XX.XX.XX-release.fr culmulative-patch-YY]. Refusing this configuration. |
Dans le cas où le reactionner n'est pas de la même version que l'arbiter et que l'option *mismatch_version_error* est désactivé sur l'arbiter:
[YYYY-MM-DD HH:MM:SS] WARNING : [ reactionner-name ] Incompatible daemon version : Your Arbiter daemon is in version [XX.XX.XX-release.fr culmulative-patch-YY] while this daemon is in version [XX.XX.XX-release.fr culmulative-patch-YY]. |
Lorsque qu'il y a une mise à jour de la configuration, deux logs en INFO sont affichés.
Le premier indiquant que nous rentrons dans la phase de chargement d'une nouvelle configuration.
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ CONFIGURATION ] [ UPDATE ] ----- Loading a configuration update from the arbiter |
Le deuxième indiquant que nous avons reçu la configuration de l'Arbiter.
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ CONFIGURATION ] [ UPDATE ] The arbiter send us a new configuration: [configuration_uuid=configuration-uuid, arbiter=arbiter-name, architecture=architecture-name, date=YYYY-MM-DD HH:MM:SS] |
Dans le cas où le reactionner n'est pas de la même version que l'arbiter et que l'option *mismatch_version_error* est activé sur l'arbiter:
[YYYY-MM-DD HH:MM:SS] ERROR : [ reactionner-name ] Incompatible daemon version : Your Arbiter daemon is in version [XX.XX.XX-release.fr culmulative-patch-YY] while this daemon is in version [XX.XX.XX-release.fr culmulative-patch-YY]. Refusing this configuration. |
Dans le cas où le reactionner n'est pas de la même version que l'arbiter et que l'option *mismatch_version_error* est désactivé sur l'arbiter:
[YYYY-MM-DD HH:MM:SS] WARNING : [ reactionner-name ] Incompatible daemon version : Your Arbiter daemon is in version [XX.XX.XX-release.fr culmulative-patch-YY] while this daemon is in version [XX.XX.XX-release.fr culmulative-patch-YY]. |
Lorsque que l'Arbiter détecte un changement de lien entre les démons quatre logs en INFO seront affichés.
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ CONFIGURATION ] The arbiter asked us to remove daemons: [YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ CONFIGURATION ] - REMOVED scheduler : [name=scheduler1-name] [shard_id= XXX] [uri=http://scheduler_address:port/] |
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ CONFIGURATION ] The arbiter send us new daemons: [YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ CONFIGURATION ] + ADDED scheduler : [name=scheduler2-name] [shard_id= XXX] [uri=http://scheduler_address:port/] |
Si le serveur hébergeant le démon est surchargé en termes d'IO disques sur le volume qui héberge le fichier de log, alors ce dernier va mettre du temps à s'écrire et va ralentir tout le démon. Il faut alors si c'est faisable isoler le volume des disques sur un disque moins chargé pour ne pas ralentir le démon.
En cas de soucis, vous aurez dans les logs l'entrée suivante:
YYYY-MM-DD HH:MM:SS WARNING : [ LOGGER ] YYYY-MM-DD HH:MM:SS WARNING : [ LOGGER ] ---------------------------------------------------------------------------------------------------- YYYY-MM-DD HH:MM:SS WARNING : [ LOGGER ] [ WRITING ] The log writes time is very high (1.87s). Please look at your log disk performance. YYYY-MM-DD HH:MM:SS WARNING : [ LOGGER ] ---------------------------------------------------------------------------------------------------- YYYY-MM-DD HH:MM:SS WARNING : [ LOGGER ] |
Quand un check de supervision du démon est fait, on va avoir plusieurs entrées dans les logs qui concernent des données que le démon garde sur diverses statistiques.
Un log permet d'avoir le temps pris sur le calcul des dernières commandes en timeout:
[YYYY-MM-DD HH:MM:SS] DEBUG : [ reactionner-name ] [ STATS ] Compute "Checks in timouts" stats : 0.000s in a total of 2048 commands in timeouts |
Un log permet d'avoir le temps de calcul concernant les ranges d'exécution des checks/notifications en fonction du temps (<100ms, <400ms, etc):
[YYYY-MM-DD HH:MM:SS] DEBUG : [ reactionner-name ] [ STATS ] Compute "Checks per CPU running time" : 0.000s (on a total of 2048 checks) |
Un log permet d'avoir le temps de calcul pour avoir les 5 commandes les plus longues en temps CPU:
[YYYY-MM-DD HH:MM:SS] DEBUG : [ reactionner-name ] [ STATS ] top5 execution time 0.003s (loop over 1 ranges and 343 elements) |
Un dernier log permet d'avoir le temps complet du calcul des statistiques du démon:
[YYYY-MM-DD HH:MM:SS] DEBUG : [ reactionner-name ] [ STATS ] Daemon stats were computed in 0.020s (0.001 for daemon common part, 0.020 for reactionner part) |
En cas d'affichage INFO on met un petit morceau en plus sur comment gérer le niveau de log:
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ STATS ] Daemon stats were computed in 0.004s (0.000 for daemon common part, 0.004 for poller part) (NOTE: log is displayed in INFO because 0.004 is higher than display_statistics_compute_time_if_higher=1ms in the daemon cfg) |
Le démon nettoie ses structures de statistiques toutes les 5minutes, ce qui sera vu par la ligne de log suivante:
[YYYY-MM-DD HH:MM:SS] INFO : [ reactionner-name ] [ STATS ] Clean checks in timeouts structure in 0.000s (before clean: 0 commands in timeouts, after clean: 0) |
Les démons ont une phase de chargement des modules qui est décrite dans la page GLOBAL - Logs de gestion des modules - chapitre [ MODULES-MANAGER ]
Il se peut que si un worker est chargé, il mette trop de temps à nous renvoyer un résultat, dans ce cas on aura le log WARNING suivant:
[YYYY-MM-DD HH:MM:SS] WARNING : [ reactionner-name ] The worker 2 reception did fail this turn (IOError), skip to the next turn to receive more. |
La vérification du bon fonctionnement des workers est faite lors de l'envoi des checks, donc en cas de problème worker mort il sera détecté.