Les fichiers de log du Synchronizer sont situés dans le dossier /var/log/shinken/. Pour plus d'informations, consultez la page Fichiers Logs.

Démarrage

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   : [ synchronizer-name ] Daemon version is: XX.XX.XX-release.fr culmulative-patch-YY


Lors du démarrage du démon, une ligne est disponible:

[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-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   : [ synchronizer-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   : [ synchronizer-name ] [ SYSTEM           ] System resource number of processes/threads is set to (soft:unlimited  / hard:unlimited ) (set at system max values)

Avec comme informations principales:

  • Sa version
  • Son numéro de PID
  • Ses limites systèmes en nombre de fichiers/socket ouvrables, et le nombre max de processus/threads

Messages d'erreurs possibles

Erreur d'encodage dans les fichiers des modules

Ce log d'erreur indique qu'un fichier des modules de Shinken situé dans /etc/shinken n'est pas encodé en utf-8, il est suivi d'un log d’avertissement (warning) indiquant le fichier en question dans l'exemple suivant, c'est le fichier /etc/shinken/modules/webui.cfg qui ne respecte pas le bon encodage.

[YYYY-MM-DD HH:MM:SS] WARNING: [ synchronizer-name ] [config] Some characters could not be read in utf-8 in the file : /etc/shinken-user/source-data/ma-source/items/elements.cfg

Pour résoudre ce problème, il suffit de réencoder le fichier au format UTF-8.

Erreur de configuration des sources

Il ne peut y avoir qu'une seule source de type "syncui-import". Une source nommée "syncui" étant déjà définie en interne, ajouter une source de type "syncui-import" appelée autrement que "syncui" ( pour surcharger la source syncui ) va empêcher le synchronizer de démarrer et remontera le log suivant :

[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] [ CONFIGURATION     ] You can have only one source of type "syncui-import" and it must be named "syncui"

Il ne peut y avoir qu'une seule source de type "discovery-import". Une source nommée "discovery" étant déjà définie en interne, ajouter une source de type "discovery-import" appelée autrement que "discovery" ( pour surcharger la source discovery ) va empêcher le synchronizer de démarrer et remontera le log suivant :

[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] [ CONFIGURATION     ] You can have only one source of type "discovery-import" and it must be named "discovery"

Si dans son fichier de configuration une source n'a pas de paramètre "module_type", le Synchronizer ne démarre pas et ce log est affiché.

[YYYY-MM-DD HH:MM:SS] ERROR  : [ synchronizer-name ] [ CONFIGURATION    ] The source imported from file "CONFIGURATION_FILE_PATH" does not have a "module_type"


Erreur à cause de caractères interdits dans le nom d'un royaume

Lorsque le nom d'un royaume contient un ( ou plusieurs ) caractère( s ) interdits, deux logs nous annoncent quels sont ces caractères ( ", ', < et > ), le nom du royaume en erreur ainsi que le fichier et la ligne dont il vient.

[YYYY-MM-DD HH:MM:SS] ERROR  : [ synchronizer-name ] Forbidden characters ", ', < or > found in the name of realm "<France>" for "/etc/shinken/realms/france.cfg:7
[YYYY-MM-DD HH:MM:SS] ERROR  : [ synchronizer-name ] Items in <France> is incorrect

Dans l'exemple, le royaume présent dans le fichier /etc/shinken/realms/france.cfg possède le nom <france> qui contient des caractères interdits. ( < et > ).

Erreur de connexion à la base mongo

Ce log d'erreur remonte lorsque le Synchronizer essaie de se connecter à une base mongo sur une machine externe n'autorisant pas les connexions extérieures.
Le premier est en erreur est les suivants en Warning jusqu'à que le Synchronizer réussissent ou non à communiquer avec la base mongo.

Avec le tunnel SSH activé :

[YYYY-MM-DD HH:MM:SS] WARNING: [ synchronizer-name ] [ INITIALISATION ] [ MONGO ] [ SSH TUNNEL ]   - mongo connection failure : localhost:43577 ==(ssh tunnel)==> 192.168.1.87:22 ==(mongodb)==> 192.168.1.87:27017. Retrying during 120 seconds, ( left 114 seconds / retry =   5 ) 
[YYYY-MM-DD HH:MM:SS] WARNING: [ synchronizer-name ] [ INITIALISATION ] [ MONGO ] [ SSH TUNNEL ]   - mongo connection failure : localhost:43577 ==(ssh tunnel)==> 192.168.1.87:22 ==(mongodb)==> 192.168.1.87:27017. Retrying during 120 seconds, ( left 109 seconds / retry =  10 )
[YYYY-MM-DD HH:MM:SS] WARNING: [ synchronizer-name ] [ INITIALISATION ] [ MONGO ] [ SSH TUNNEL ]   - mongo connection failure : localhost:43577 ==(ssh tunnel)==> 192.168.1.87:22 ==(mongodb)==> 192.168.1.87:27017. Retrying during 120 seconds, ( left 104 seconds / retry =  15 )

Sans le tunnel SSH activé :

[YYYY-MM-DD HH:MM:SS] WARNING: [ synchronizer-name ] [ INITIALISATION ] [ MONGO ]   - mongo connection failure to 192.168.1.87:27017. Retrying during 120 seconds, ( left 114 seconds / retry =   5 )
[YYYY-MM-DD HH:MM:SS] WARNING: [ synchronizer-name ] [ INITIALISATION ] [ MONGO ]   - mongo connection failure to 192.168.1.87:27017. Retrying during 120 seconds, ( left 109 seconds / retry =  10 )
[YYYY-MM-DD HH:MM:SS] WARNING: [ synchronizer-name ] [ INITIALISATION ] [ MONGO ]   - mongo connection failure to 192.168.1.87:27017. Retrying during 120 seconds, ( left 104 seconds / retry =  15 )


Erreur lors que l'Arbiter demande la configuration au Synchronizer mais que le Synchronizer n'est pas encore prêt 

Lors des tentatives:

[YYYY-MM-DD HH:MM:SS] WARNING: [ synchronizer-name ] [ ARBITER GET CONFIGURATION ] Arbiter asks me for the configuration but the Synchronizer is not ready for the moment after 55 attempts. Max attempts before Arbiter give up: 90

Si toutes les tentatives ont échoué:

[YYYY-MM-DD HH:MM:SS] ERROR: [ synchronizer-name ] [ ARBITER GET CONFIGURATION ] Arbiter asks me for the configuration but the Synchronizer is not ready, Arbiter will stop to ask us a configuration. You will need to restart manually your Arbiter when Synchronizer is ready. (attempt 60)


Surcharge serveur en activité disque, ralentissant l'écriture des logs

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 ]


Erreur de paramétrage sur les éléments ( hôtes, utilisateurs )

Sur les hôtes

Erreur sur le paramètre host__detect_unique_address__behaviour ( adresses dupliqués )
La valeur de host__detect_unique_address__behaviour est erroné

Si le paramètre host__detect_unique_address__behaviour défini dans un fichier n'a pas une des valeurs attendues ( duplicated_accepted, warning_displayed, error_displayed, save_forbidden ) une erreur nous indique la valeur erronée saisie ainsi que l'endroit où il est défini :

[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] The parameter [ host__detect_unique_address__behaviour ] has an incorrect value "ERRORED_VALUE". Correct values are : duplicated_accepted, warning_displayed, error_displayed, save_forbidden.  
[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] The incorrect parameter is found in file : FILE_PATH



  • ERRORED_VALUE : La valeur erronée saisie dans le fichier.
  • FILE_PATH : Le chemin vers lequel le paramètre définit a été détecté comme incorrect.
host__detect_unique_address__behaviour est défini plusieurs fois

Si le paramètre host__detect_unique_address__behaviour définit dans plusieurs fichiers, une erreur est remontée pour nous indiquer les fichiers dans lesquels il est défini :

[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] Multiple definition detected for parameter [ host__detect_unique_address__behaviour ] in the following files : 
[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] FILE_PATH_1 
[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] FILE_PATH_2 
[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] FILE_PATH_3



  • FILE_PATH_X : Fichier dans lequel la propriété host__detect_unique_address__behaviour a été trouvée.
host__detect_unique_address__behaviour est défini plusieurs fois et la valeur est erronée

Lorsque le paramètre host__detect_unique_address__behaviour est défini plusieurs fois et que le dernier paramètre vérifié n'est pas correct, une erreur remonte pour indiquer que le paramètre n'est pas bon et dans quels fichiers il est défini :

[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] The parameter [ host__detect_unique_address__behaviour ] has an incorrect value "ERRORED_VALUE". Correct values are : duplicated_accepted, warning_displayed, error_displayed, save_forbidden. 
[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] Multiple definition detected for parameter [ host__detect_unique_address__behaviour ] in the following files :
[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] FILE_PATH_1 
[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] FILE_PATH_2 
[YYYY-MM-DD HH:MM:SS] ERROR : [ synchronizer-name ] FILE_PATH_3

  • ERRORED_VALUE : La valeur erronée saisie dans dernier fichier pris en compte.
  • FILE_PATH_X : Fichier dans lequel la propriété host__detect_unique_address__behaviour a été trouvée.

Logs de chargement des modules

Les démons ont une phase de chargement des modules qui est décrite dans la page HIDDEN - Logs de gestion des modules - chapitre [ MODULES-MANAGER ]

Activité des sources

Initialisation des sources

Au démarrage du démon Synchronizer, les sources définies dans son fichier cfg "synchronizer.cfg" sont initialisées.


[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ source:SOURCE_NAME ] Configuration of the source [SOURCE_NAME] initialized


Récapitulatif de la configuration des sources utilisé pour le prochain merge des sources


[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] Merging started with sources : 
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] +---------------------+------------+---------------------+----------------------------+---------------------------------------+-------------------------------+ 
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] |        name         | merge_mode | compute_new_element | compute_element_difference | compute_deleted_element_not_in_source |            put_in             |
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] +=====================+============+=====================+============================+=======================================+===============================+ 
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] | source_01           | all        | authorized          | authorized                 | delete_if_missing_in_this_source      | production_and_reload_arbiter |
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] +---------------------+------------+---------------------+----------------------------+---------------------------------------+-------------------------------+ 
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] | syncui              | all        | authorized          | authorized                 | disabled                              | source_space                  | 
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] +---------------------+------------+---------------------+----------------------------+---------------------------------------+-------------------------------+ 
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] | listener-shinken    | all        | authorized          | authorized                 | disabled                              | source_space                  |
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] +---------------------+------------+---------------------+----------------------------+---------------------------------------+-------------------------------+
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] | server-analyzer     | all        | authorized          | authorized                 | disabled                              | source_space                  |
[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] +---------------------+------------+---------------------+----------------------------+---------------------------------------+-------------------------------+


Début du calcul des nouveaux éléments et ceux en différences


[YYYY-MM-DD HH:MM:SS] INFO   : [ synchronizer-name ] [ SOURCE           ] [ MERGE                  ] Start comparing 6 merge items to existing items


Calcul des éléments proposés en suppression par la source ( paramètre compute_deleted_element_not_in_source à delete_if_missing_in_this_source ou delete_if_missing_in_all_sources )

La source trouve un élément a proposer en suppression :

[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name ] [ SOURCE ] [ MERGE ] Searching item to propose as deleted for source [SOURCE_NAME] 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name ] [ SOURCE ] [ MERGE ] The source [SOURCE_NAME] will propose for deletion the item of type serviceshosttpls with id:[ITEM_UUID] and name:[ITEM_NAME]

S'il n'y a pas d'éléments à proposé en suppression :

[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name ] [ SOURCE ] [ MERGE ] There is no items to propose for deletion


Lorsque la source effectue des modifications en staging ou en production ( paramètre put_in )


[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name ] [ source:SOURCE_NAME ] Source have a put_in configuration set to production_and_reload_arbiter. Sync-ui will start to delete, import new and validate changes on items if merge had computed some of these


Modifications en staging

La source met les éléments en staging pour les valeurs suivantes du paramètre put_in :

  • staging
  • production
  • production_and_reload_arbiter

Exemple d'éxécution sans aucune actions

[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] Start to delete items for source SOURCE_NAME 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] No items to delete for source SOURCE_NAME
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] Start to import new items for source  SOURCE_NAME 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] No new items to import for source SOURCE_NAME
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] Start to validate changes on items for source  SOURCE_NAME 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] No items had changes for source SOURCE_NAME 

Exemple avec des éléments supprimés, importé et avec des changements

[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] Start to delete items for source SOURCE_NAME 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] Deleted 1 hosts in staging 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] Start to import new items for source SOURCE_NAME 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] On the 1 hosts to import, 1 were imported, 0 is an invalid item 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] Start to validate changes on items for source SOURCE_NAME 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ SOURCE TO STAGING ] On the 1 servicetpls to validate changes, 1 were validate, 0 is an invalid item


Passage en production

Ces logs sont présent pour la valeur "production" du paramètre put_in

[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ STAGING TO PRODUCTION ] Start to put in production 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ ARBITER_NAME ] [ IS ALIVE CHECK ] Creating new connexion to the arbiter (uri="http://IP_ARBITER:7770/", ping_timeout=1s, transfert_timeout=120s) 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] The put in production for source:[SOURCE_NAME] and user:[USER_NAME] succeed 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ STAGING TO PRODUCTION ] End to put in production


Passage en production avec rechargement de l'Arbiter

Ces logs sont présent pour la valeur "production_and_reload_arbiter" du paramètre put_in

[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ STAGING TO PRODUCTION ] Start to put in production and reload arbiter 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ ARBITER_NAME ] [ IS ALIVE CHECK ] Creating new connexion to the arbiter (uri="http://IP_ARBITER:7770/", ping_timeout=1s, transfert_timeout=120s) 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] The put in production for source:[SOURCE_NAME] and user:[USER_NAME] succeed 
[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name-sync-ui ] [ SOURCE ] [ POST MERGE ] [ STAGING TO PRODUCTION ] End to put in production and reload arbiter


Lorsqu'une source n'arrive pas mettre en staging/production

Si l'Arbiter n'était pas disponible lors de la mise en production des éléments, le log suivant sera présent

[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name ] [ source:SOURCE_NAME ] Fail to put in:[production_and_reload_arbiter] because:[Arbiter is not reachable]


Une source créé une période de maintenance (DOWNTIME) sur un élément qui est supprimé

Quand une source est configurée pour envoyer une période de maintenance quand un hôte est supprimé, on aura dans les logs du démon Synchronizer:

[YYYY-MM-DD HH:MM:SS] INFO : [ synchronizer-name ] [synchronizer-collector-vmware] [CallbackDowntime ] [DOWNTIME] Creating a downtime on host HOST_NAME, by author USER_NAME, ending in 1400s to receiver api IP_RECEIVER:PORT_RECEIVER.