Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Scroll Ignore
scroll-viewporttrue
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue
scroll-htmlfalse
Panel
titleSommaire

Table of Contents
maxLevel3
stylenone

Présentation

Le module architecture-export effectue

deux

trois types d'actions distinctes :

  • Modification de la configuration de NagVis afin de permettre la communication entre NagVis et Shinken
  • Envoi de l'architecture aux différents récepteurs ( autres installations de Shinken )
  • Création des cartes d'une architecture Shinken pour NagVis

Chaque action est retranscrite dans les logs de l'

arbiter

Arbiter.

Panel
titleSommaire

Table of Contents
maxLevel4
stylenone

Les logs de modification de la configuration de NagVis

Note

Tous les logs de modification/lecture sont écrits deux fois. Ceci est dû au fait que nous fournissons deux installations NagVis distinctes, chacune d'entre elles est concernée par ces modifications/lectures : 

  • nagvis-shinken-architecture, qui est celui sur lequel nous mettons à disposition des cartes générées automatiquement
  • nagvis, qui lui ne contient aucune carte générée par Shinken

Lecture de

Lecture de

la configuration du module [ READING CONFIGURATION ]

Au démarrage du module, celui-ci va commencer par lire sa propre configuration afin de vérifier que les informations sont bonnes ( voir HIDDEN - 001 - voir Module architecture-export )

En INFO seront affichés Il est ainsi possible de voir toutes les étapes de lecture de la configuration. En DEBUG seront affichés les détails de lecture de la configuration, tels que les paramètres récupérés.

Exemple

Voici un exemple d'une lecture de configuration du module ayant réussie :

language
Code Block
jsthemeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] Broker [ broker ] found from parameter [ architecture_export__broker_connection__broker_name ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] Broker [ brokerARBITER_NAME     ] found
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] WebUI module [ WebUI ] found from parameter [ architecture_export__broker_connection__broker_webui_target ]
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] The WebUI address is [ localhost ], we will use its public address [ http://192.168.1.119:7767 ] for WebUI redirection
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] Livestatus WebUImodule [ WebUILivestatus ] found, from itsparameter address is http://192.168.1.119:7767[ architecture_export__broker_connection__broker_livestatus ]
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] The Livestatus address is [ localhost ], we will use its public address [ 192.168.1.119 ] for WebUI redirection
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] Livestatus module found from parameter [ :50000 ] 

Cas d'erreurs

Si le Broker renseigné dans le paramètre architecture_export__broker_connection__broker_name est introuvable, l'édition du fichier de configuration de NagVis sera annulée et ce message apparaîtra :

Code Block
themeEmacs
livestatus ]
[AAAA-MM-DD HH:MM:SS] DEBUGERROR  : [ arbiterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] LivestatusThe Broker [ Livestatusbroker ] found,set itswith addressparameter is 192.168.1.119:50000
Cas d'erreurs
Si le Broker renseigné dans le paramètre
[ architecture_export__broker_connection__broker_
name est introuvable, l'édition du fichier de configuration de NagVis sera annulée et ce message apparaîtra
Code Block
languagejs
themeEmacs
[AAAA-MM-DD HH:MM:SS] ERROR  : [ arbiter ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] The broker [ broker ] set with parameter [ architecture_export__broker_connection__broker_name ] do not name ] do not exists. Abort edition of the nagvis config file

Si le paramètre architecture_export__broker_connection__broker_webui_communication_type est  est à "module" et que le module WebUI renseigné dans le paramètre architecture_export__broker_connection__broker_webui_target est introuvable, l'édition de la configuration de la communication entre NagVis et le module WebUI sera annulée et ce message apparaîtra :

Info

Pour plus d'informations sur ces paramètres, voir Module architecture-export

js
Code Block
Code Block
language
themeEmacs
[AAAA-MM-DD HH:MM:SS] ERROR  : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] The WebUI module [ WebUI ] set with parameter [ architecture_export__broker_connection__broker_webui_target ] do not exists on the Broker [ broker-master ], we will not change the configuration of the communication between NagVis and the WebUI

Si le module Livestatus renseigné dans le paramètre architecture_export__broker_connection__broker_livestatus est introuvable, l'édition de la configuration de la communication entre NagVis et le module Livestatus sera annulée et ce message apparaîtra :

js
Code Block
language
themeEmacs
[AAAA-MM-DD HH:MM:SS] ERROR  : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ READING CONFIGURATION ] The Livestatus module [ Livestatus ] set with parameter [ architecture_export__broker_connection__broker_livestatus ] do not exists on the Broker [ broker-master ], we will not change the configuration of the communication between NagVis and the Livestatus

Edition/Lecture de la configuration de NagVis [ CONFIGURATION ]

Après la lecture de la configuration du module, celui-ci va être face à deux options :

  • Si la configuration est bonne, il va modifier la configuration de NagVis pour être en accord avec la siennesera systématiquement mise à jour.
  • Sinon, il va simplement lire la configuration de NagVis afin de connaître son état actuel

En INFO seront affichés les différentes étapes. En DEBUG seront affichés les détails, tels que les paramètres récupérés.

Exemples

Voici un exemple d'une modification de la configuration de NagVis ayant réussie :

language
Code Block
jsthemeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ] UPDATING connection between NagVis and Shinken modules
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ] EditEditing /etc/shinken/external/nagvis/etc/nagvis.ini.php file
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]    - Setting WebUI connection to allow redirection on NagVis maps
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "shinken_auth_protocol" parameter set to [ http ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "shinken_auth_port" parameter set to [ 7767 ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "shinken_auth_address" parameter set to [ 192.168.1.119 ]
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "hosturl" parameter set to [ http://192.168.1.119:7767/detail-by-name/[host_name] ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "serviceurl" parameter set to [ http://192.168.1.119:7767/detail-by-name/[host_name]/checks/[service_description] ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]    - Setting Livestatus connection to get Shinken objects status
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "socket" parameter set to [ socket="tcp:192.168.1.119:50000" ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ] File /etc/shinken/external/nagvis/etc/nagvis.ini.php edited
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ] UPDATING connection between NagVis and Shinken modules
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ] Edit /opt/nagvis/etc/nagvis.ini.php file
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]    - Setting WebUI connection to allow redirection on NagVis maps
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "shinken_auth_protocol" parameter set to [ http ]
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "shinken_auth_port" parameter set to [ 7767 ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "shinken_auth_address" parameter set to [ 192.168.1.119 ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "hosturl" parameter set to [ http://192.168.1.119:7767/detail-by-name/[host_name] ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "serviceurl" parameter set to [ http://192.168.1.119:7767/detail-by-name/[host_name]/checks/[service_description] ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]    - Setting Livestatus connection to get Shinken objects status
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "socket" parameter set to [ socket="tcp:192.168.1.119:50000" ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ] File /opt/nagvis/etc/nagvis.ini.php edited

Si aucune modification n'est attendue, dû à une erreur de configuration est présente, l'architecture-export lira simplement la configuration de NagVis afin d'afficher son état actuel :

js
Code Block
language
themeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvisARCHITECTURE-shinken-architectureEXPORT ] [ CONFIGURATION ] The connection between NagVis and Shinken modules will not be changed=================================================================
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architectureCONFIGURATION ] [DUE TO CONFIGURATION ] Read /etc/shinken/external/nagvis/etc/nagvis.ini.php fileERROR, The connection between NagVis and Shinken modules will NOT be updated
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiterARBITER_NAME  ] [ ARCHITECTURE-EXPORT ] [ nagvisARCHITECTURE-shinken-architectureEXPORT ] [ CONFIGURATION ]    - No WebUI module found, we will keep previous NagVis configuration. Redirection to WebUI on NagVis maps may not work properly=================================================================
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "shinken_auth_protocol" parameter not changed. It is still [ http ]Reading /etc/shinken/external/nagvis/etc/nagvis.ini.php file
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]    - No WebUI redirection configuration found, we => "shinken_auth_port" parameter not changed. It is still [ 7767 ]will keep previous NagVis configuration. Redirection to WebUI on NagVis maps may not work properly
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "shinken_auth_addressprotocol" parameter not changed. It is still [ 192.168.1.119http ]
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "hosturlshinken_auth_port" parameter not changed. It is still [ http://192.168.1.119:7767/detail-by-name/[host_name] ]
[AAAA-MM-7767 ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "serviceurlshinken_auth_address" parameter not changed. It is still [ http://192.168.1.119:7767/detail-by-name/[host_name]/checks/[service_description] ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]    - No Livestatus module found, we will keep previous NagVis configuration. Status of Shinken elements on NagVis maps may not work properly=> "hosturl" parameter not changed. It is still [ http://192.168.1.119:7767/detail-by-name/[host_name] ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]        => "socketserviceurl" parameter not changed. It is still [ socket="tcp:http://192.168.1.119:50000"7767/detail-by-name/[host_name]/checks/[service_description] ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ]   The connection- betweenNo NagVisLivestatus andmodule Shinkenfound, moduleswe will notkeep be changed
[AAAA-MM-DD HH:previous NagVis configuration. Status of Shinken elements on NagVis maps may not work properly
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis-shinken-architecture ] [ CONFIGURATION ] Read /opt/nagvis/etc/nagvis.ini.php file        => "socket" parameter not changed. It is still [ socket="tcp:192.168.1.119:50000" ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ] The connection between -NagVis Noand WebUI module found, we will keep previous NagVis configuration. Redirection to WebUI on NagVis maps may not work properlyShinken modules will not be changed
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "shinken_auth_protocol" parameter not changed. It is still [ http ]Read /opt/nagvis/etc/nagvis.ini.php file
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]    - No WebUI  => "shinken_auth_port" parameter not changed. It is still [ 7767 ]redirection configuration found, we will keep previous NagVis configuration. Redirection to WebUI on NagVis maps may not work properly
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "shinken_auth_addressprotocol" parameter not changed. It is still [ 192.168.1.119http ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "hosturlshinken_auth_port" parameter not changed. It is still [ http://192.168.1.119:7767/detail-by-name/[host_name] ]
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "serviceurlshinken_auth_address" parameter not changed. It is still [ http://192.168.1.119:7767/detail-by-name/[host_name]/checks/[service_description] ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME    arbiter ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]    - No Livestatus module found, we will keep previous NagVis configuration. Status of Shinken elements on NagVis maps may not work properly
[AAAA-MM-DD HH:MM:SS] DEBUG  : [ arbiter=> "hosturl" parameter not changed. It is still [ http://192.168.1.119:7767/detail-by-name/[host_name] ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "socketserviceurl" parameter not changed. It is still [ socket="tcp:http://192.168.1.119:50000" ]
Note

La modification/lecture de la configuration de NagVis est visible 2 fois. Ceci est dû au fait que nous fournissons deux installations NagVis distincts : 

nagvis-shinken-architecture, qui est celui sur lequel nous mettons à disposition des cartes générées automatiquement

nagvis, qui lui ne contient aucune carte générée par Shinken

Les logs d'envoi/réception d'architecture

Un module architecture-export peut envoyer et recevoir une architecture.
Chaque architecture reçue sera cartographiée sur le module l'ayant reçu

7767/detail-by-name/[host_name]/checks/[service_description] ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]    - No Livestatus module found, we will keep previous NagVis configuration. Status of Shinken elements on NagVis maps may not work properly
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ nagvis ] [ CONFIGURATION ]        => "socket" parameter not changed. It is still [ socket="tcp:192.168.1.119:50000" ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ CONFIGURATION ] =================================================================

Les logs d'envoi/réception d'architecture [ ARCHITECTURE_NAME ]

Un module architecture-export peut envoyer et recevoir une architecture.
Chaque architecture reçue sera cartographiée sur le module l'ayant reçu.

Envoi de

Envoi de

son architecture

Au démarrage, l'architecture-export va envoyer son architecture -export va envoyer son architecture à tous les "recipients" configurés dans le module.

Nous affichons alors des logs :

  • En INFO il est possible de voir le nombre d'envoi à effectuer
  • En DEBUG il est possible de voir chaque envoi un à un
Exemple

à tous les "recipients" configurés dans le module.

Les logs montrent alors tous les envois effectués.

Exemple

Code Block
themeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] Sending architecture to 2 recipient(s)
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] Sending architecture to [ http://127.0.0.1:7780 ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] Sending architecture to [ http://192.168.0.15:7780 ]

Cas d'erreurs

Si une adresse ne commence pas par 'http' ou 'https' cette erreur apparaîtra :

Code Block
themeEmacs
[YYYY-MM-DD HH:MM:SS] ERROR  : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ Shinken ] External export module address "127.0.0.1" has an incorrect format ( does not start with "http://" or "https://" )
[YYYY-MM-DD HH:MM:SS] ERROR  : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ Shinken ] Due to address error, we will not send information to this address. 

Si le port d'une adresse n'a pas été spécifié, cette erreur apparaîtra :

Code Block
themeEmacs
[YYYY-MM-DD HH:MM:SS] ERROR  : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ Shinken ] No port specified in the external export module address "127.0.0.1"
[YYYY-MM-DD HH:MM:SS] ERROR  : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ Shinken ]  Due to address error, we will not send information to this address. 

Si l'adresse configuré est https mais que le port écoute en http, cette erreur apparaîtra :

Code Block
themeEmacs
[YYYY-MM-DD HH:MM:SS] ERROR  : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ Shinken ] Cannot send the architecture to [https://192.168.0.15:7780]; "[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:618)" occurred, still 1 tries
[YYYY-MM-DD HH:MM:SS] ERROR  : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ Shinken ] Cannot send the architecture to [https://192.168.0.15:7780]; "[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:618)" occurred, still 0 tries

Si l'adresse configuré est http mais que le port écoute en https, cette erreur apparaîtra :

Code Block
themeEmacs
[YYYY-MM-DD HH:MM:SS] ERROR  : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ Shinken ] An error occurred when sending the architecture to [http://192.168.1.59:7780]: 400 - The client sent a plain HTTP request, but this server only speaks HTTPS on this port.

Réception d'une architecture

Lors de la réception d'une architecture, nous la sauvegardons temporairement dans un fichier json afin de préserver son état. Ceci permet au redémarrage de l'Arbiter de connaître les architectures présentes sur son module.

Exemple

Code Block
themeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] [ 127.0.0.1 ] ask me to map its architecture
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] The Architecture has been received, we will make its maps
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] Save broks contents /var/lib/shinken/architecture_export_received.json

Les logs de création de carte NagVis [ ARCHITECTURE_NAME ] [ MAP GENERATOR ]

Récupération des hôtes existants sur le listener-shinken

Avant tout, il nous faut récupérer les hôtes existant sur le listener-shinken étant lié à l'architecture que nous allons cartographier.
Nous affichons alors des logs expliquant ce qui a été trouvé :

Exemple

Voici un exemple de récupération d'hôtes auprès du listener-shinken

Code Block
themeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Retrieving host(s) corresponding to this architecture from the Synchronizer ( via listener-shinken )
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Found [ Shinken - ALL - 192.168.1.119 ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Found [ Shinken - BORDEAUX - 192.168.1.119 ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Found [ Shinken - GRENOBLE - 192.168.1.119 ]
Code Block
languagejs
themeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ NOM_DE_L'ARCHITECTURE ] Sending architecture to 2 recipientsEXPORT ] [ ARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Found [ Shinken - LYON - 192.168.1.119 ]
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ NOM_DE_L'ARCHITECTUREARCHITECTURE_NAME ] Sending[ architectureMAP to [http://127.0.0.1:7780]
Cas d'erreurs
GENERATOR ]         => Found 4 host(s)

Cas d'erreurs

Si l'architecture-export essaye de communiquer avec le listener-shinken en HTTPS alors qu'il ne l'est pas, une erreur apparaîtra et la création de la map sera abandonnée. Pour régler ce problème, il faut modifier la configuration du module ( voir Module architecture-export ).

Code Block

Si une adresse ne commence pas par 'http' ou 'https' cette erreur apparaîtra :

Code Block
languagejs
themeEmacs
[AAAA-MM-DD HH:MM:SS] INFO ERROR  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ] External export module address '127.0.0.1' has an incorrect format (does not start with 'http://' or 'https://'). Skipping sending info to this address.

Si le port d'une addresse n'a pas été spécifié, cette erreur apparaîtra :

Code Block
languagejs
themeEmacs
 - Retrieving host(s) corresponding to this architecture from the Synchronizer ( via listener-shinken )
[AAAA-MM-DD HH:MM:SS] ERROR  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ] No port specified in the external export module address '127.0.0.1'. Skipping sending info to this address.

Réception d'une architecture

Lors de la réception d'une architecture, nous la sauvegardons temporairement dans un fichier json afin de préserver son état. Ceci permet au redémarrage de l'Arbiter de connaître les architectures présentes sur son module.

Nous affichons les logs suivants :

  • En INFO un log s'affiche dès la réception d'une architecture
  • En DEBUG il est possible de voir l'adresse de l'envoi et le chemin d'accès au fichier
Exemple
         => Tried to request the listener with HTTPS, but it failed. Verify if your listener-shinken is on HTTPS

Si l'architecture-export essaye de communiquer avec le listener-shinken en HTTP alors qu'il ne l'est pas, une erreur apparaîtra et la création de la map sera abandonnée. Pour régler ce problème, il faut modifier la configuration du module  ( voir Module architecture-export ).

js
Code Block
Code Block
language
themeEmacs
[AAAAYYYY-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter-masterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ NOM_DE_L'ARCHITECTURE ] 127.0.0.1 ask me to map its architecture
[AAAAARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Retrieving host(s) corresponding to this architecture from the Synchronizer ( via listener-shinken )
[YYYY-MM-DD HH:MM:SS] INFOERROR   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ NOM_DE_L'ARCHITECTURE ] The Architecture have been received, we will make its maps
[AAAA-MM-DD HH:MM:SS] DEBUG  : [ arbiter-master  ] [ ARCHITECTURE-EXPORT ] [ NOM_DE_L'ARCHITECTURE ] Save broks contents /var/lib/shinken/architecture_export_received.json

Les logs de création de carte NagVis

La création des cartes NagVis liées à une architecture se fait en plusieurs étapes. Chaque log commencera par :

Code Block
languagejs
themeEmacs
[ ARCHITECTURE-EXPORT ] [ NOM_DE_L'ARCHITECTURE_RECUE ] [ MAP GENERATOR ]
ARCHITECTURE_NAME ] [ MAP GENERATOR ]           => An error occurred when calling the Listener Shinken at 192.168.1.119:7777/shinken/listener-shinken/v1/hosts/ status [ 400 ] gave response [ The client sent a plain HTTP request, but this server only speaks HTTPS on this port. ] 

Si les identifiants de connexion au listener-shinken sont incorrects, une erreur apparaîtra et la création de la map sera abandonnée. Pour régler ce problème, il faut modifier la configuration du module ( voir Module architecture-export ).

Code Block

Récupération des hôtes existants sur le listener-shinken

Avant tout, il nous faut récupérer les hôtes existant sur le listener-shinken étant lié à l'architecture que nous allons cartographier.
Nous affichons alors des logs expliquant ce qui a été trouvé :

  • En INFO il est possible de voir le nombre d'hôtes trouvés
  • En DEBUG il est possible de voir l'id de chaque hôte
Exemple

Voici un exemple de récupération d'hôtes auprès du listener-shinken

js
Code Block
language
themeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Retrieving hostshost(s) corresponding to this architecture from the Synchronizer ( via listener-shinken )
[AAAA-MM-DD HH:MM:SS] DEBUGERROR  : [ arbiter-master  ] [ ARCHITECTURE-EXPORT ] [ Shinken ] [ MAP GENERATOR ]         => Found [ core-hosts-e5b9fbe9a5524699a0555b22b1f7ac46 ]
[AAAA-MM-DD HH:MM:SS] DEBUG  : [ arbiter-masterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Found [ core-hosts-2230fc02fd434f24994b4bc707e755f3 ]
[AAAA Bad login and password for the listener

Si la communication avec le listener-shinken prend trop de temps, cette erreur apparaîtra et la création de la carte sera abandonnée. Pour régler ce problème, il faut vérifier que votre listener-shinken est bien joignable.

Code Block
themeEmacs
[YYYY-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Retrieving host(s)  => Found [ core-hosts-39634f95d5d442acbdbfa1ea8b3ea35b ]
[AAAAcorresponding to this architecture from the Synchronizer ( via listener-shinken )
[YYYY-MM-DD HH:MM:SS] DEBUGERROR  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Tried to request the listener, but =>it Foundtimed out. 

Si la communication avec le listener-shinken est refusée ( s'il est injoignable ), cette erreur apparaîtra et la création de la carte sera abandonnée. Pour régler ce problème, il faut vérifier que votre listener-shinken est bien joignable.

Code Block
themeEmacs
[YYYY[ core-hosts-29152912969c436898b717476149e509 ]
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Retrieving host(s) corresponding to this architecture from the =>Synchronizer Found( [via corelistener-hosts-a3736b15911e4ba0b4c176cee1a8e599shinken ])
[AAAAYYYY-MM-DD HH:MM:SS] INFOERROR   : [ arbiter-masterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Tried to request the =>listener, Foundbut 5 hosts
Cas d'erreurs
we can't contact it. 

Création de la liste des hôtes à partir de l'architecture reçue

Une fois les hôtes déjà disponible sur le listener-shinken récupérés, nous devons en modifier/créer pour être en accord avec l'architecture reçue.

Exemple

Voici l'exemple d'une génération d'un hôte de l'architecture reçue :

Code Block

Si l'architecture-export essaye de communiquer avec le listener-shinken en HTTPS alors qu'il ne l'est pas, une erreur apparaîtra et la création de la map sera abandonnée. Pour régler ce problème, il faut modifier la configuration du module  (voir HIDDEN - 001 - Module architecture-export)

js
Code Block
language
themeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Retrieving hosts corresponding to- this architectureBuilding host(s) from thearchitecture Synchronizer (listener-shinken)description received
[AAAA-MM-DD HH:MM:SS] INFO ERROR  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Try to request the listener with HTTPS, but it failed. Verify if your listener-shinken is on HTTPS

Si les identifiants de connexion au listener-shinken sont incorrect, une erreur apparaîtra et la création de la map sera abandonnée. Pour régler ce problème, il faut modifier la configuration du module  (voir HIDDEN - 001 - Module architecture-export)

Code Block
languagejs
themeEmacs
Host [ Shinken - ALL - localhost ] modified
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Retrieving hosts corresponding to=> thisHost architecture[ fromShinken the- SynchronizerParis (listener-shinken)- localhost ] generated
[AAAA-MM-DD HH:MM:SS] ERRORINFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Bad login and password for the listener

Création de la liste des hôtes à partir de l'architecture reçue

Une fois les hôtes déjà disponible sur le listener-shinken récupérés, nous devons en modifier/créer pour être en accord avec l'architecture reçue

  • En INFO, le nombre d'hôtes générés
  • En DEBUG, chaque hôte généré est affiché
Exemple
2 host(s) generated

Envoi des hôtes au listener-shinken

Lorsque tous les hôtes liés à l'architecture sont générés, nous les envoyons au listener-shinken.

Exemple

Voici un exemple de l'envoi d'un hôte vers le listener-shinken :

Code Block

Voici l'exemple d'une génération d'un hôte de l'architecture reçue

Code Block
languagejs
themeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - BuildingSending host(s) to listSynchronizer from( architecturevia descriptionlistener-shinken received)
[AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => HostSending [ Shinken - ALL - localhost ] generated
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Sending 1[ host generated

Envoi des hôtes au listener-shinken

Lorsque tous les hôtes liés à l'architecture sont générés, nous les envoyons au listener-shinken

  • En INFO, le nombre d'hôtes envoyés
  • En DEBUG, chaque hôté envoyé est affiché
Exemple

Voici un exemple de l'envoi d'un hôte vers le listener-shinken

Code Block
languagejs
themeEmacs
Shinken - Paris - localhost ]
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     -  Sending hosts to=> Synchronizer2 host(s) sent

Cas d'erreurs

Si l'architecture-export essaye de communiquer avec le listener-shinken en HTTPS alors qu'il ne l'est pas, une erreur apparaîtra et la création de la carte sera abandonnée. Pour régler ce problème, il faut modifier la configuration du module ( voir Module architecture-export ).

Code Block
themeEmacs
(via listener-shinken)
[AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Sending host(s) to =>Synchronizer Sending( [via Shinken listener- ALL - localhost ]shinken )
[AAAA-MM-DD HH:MM:SS] INFOERROR   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => 1 host sent
Cas d'erreurs
 Tried to request the listener with HTTPS, but it failed. Verify if your listener-shinken is on HTTPS

Si les identifiants de connexion au listener-shinken sont incorrectSi l'architecture-export essaye de communiquer avec le listener-shinken en HTTPS alors qu'il ne l'est pas, une erreur apparaîtra et la création de la map sera abandonnée. Pour régler ce problème, il faut modifier la configuration du module  (voir HIDDEN - 001 - module ( voir Module architecture-export ).

language
Code Block
jsthemeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Sending hostshost(s) to Synchronizer ( via listener-shinken )
[AAAA-MM-DD HH:MM:SS] ERROR  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => TryBad tologin request the listener with HTTPS, but it failed. Verify if your listener-shinken is on HTTPS

and password for the listener

Si la communication avec le listener-shinken prend trop de temps ( s’il est injoignable ), cette Si les identifiants de connexion au listener-shinken sont incorrect, une erreur apparaîtra et la création de la map carte sera abandonnée. Pour régler ce problème, il faut modifier la configuration du module  (voir HIDDEN - 001 - Module architecture-export)vérifier que votre listener-shinken est bien joignable.

Code Block
languagejs
themeEmacs
[AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Sending hostsRetrieving host(s) corresponding to this architecture from the Synchronizer ( via listener-shinken )
[AAAA-MM-DD HH:MM:SS] ERROR  : [ arbiter-masterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]          => Tried to =>request Badthe loginlistener, andbut passwordit fortimed theout. listener

Désactivation des hôtes obsolètes

Des hôtes, trouvés dans le listener-shinken, liés à l'architecture reçue peuvent être obsolètes suite à une modification de l'architecture. Nous les désactivons alors du listener-shinken.

  • En INFO, le nombre d'hôtes désactivés
  • En DEBUG, l'id de chaque hôte désactivé est affiché

    Exemple

    Voici un exemple d'une désactivation d'hôtes obsolètes

    js
    Code Block
    language
    themeEmacs
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-masterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Disabling old hosts tohost(s) on Synchronizer ( via listener-shinken )
    [AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ arbiter-master  ] [ ARCHITECTURE-EXPORT ]ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Old host [ Shinken ]- [BORDEAUX MAP GENERATOR- 192.168.1.119 ] disabled on synchronizer      => Old host found, we disable it
    [AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Old host [core-hosts-2230fc02fd434f24994b4bc707e755f3 Shinken - GRENOBLE - 192.168.1.119 ] disabled on synchronizer           
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Old host found, we disable it host [ Shinken - LYON - 192.168.1.119 ] disabled on synchronizer     
    [AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Old3 host [core-hosts-39634f95d5d442acbdbfa1ea8b3ea35b](s) disabled on synchronizer           
    [AAAA 

    Cas d'erreurs

    Si l'architecture-export essaye de communiquer avec le listener-shinken en HTTPS alors qu'il ne l'est pas, une erreur apparaîtra et la création de la map sera abandonnée. Pour régler ce problème, il faut modifier la configuration du module ( voir Module architecture-export ).

    Code Block
    themeEmacs
    [YYYY-MM-DD HH:MM:SS] INFO   : [ arbiter-master  ] [ ARCHITECTURE-EXPORT ] [ ShinkenARBITER_NAME     ] [ MAP GENERATOR ]         => Old host found, we disable it
    [AAAA-MM-DD HH:MM:SS] DEBUG  : [ arbiter-master  ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Old host [core-hosts-e5b9fbe9a5524699a0555b22b1f7ac46] disabled on synchronizer           
    [AAAA [ MAP GENERATOR ]     - Sending host(s) to Synchronizer ( via listener-shinken )
    [YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Old host found, we Tried to request the listener with HTTPS, but it failed. Verify if your listener-shinken is on HTTPS
    


    Si les identifiants de connexion au listener-shinken sont incorrects, une erreur apparaîtra et la création de la map sera abandonnée. Pour régler ce problème, il faut modifier la configuration du module ( voir Module architecture-export ).

    Code Block
    themeEmacs
    [YYYY disable it
    [AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Sending host(s) to =>Synchronizer Old( hostvia [core-hosts-0ca171601a184deba6309f98b2dfdc76] disabled on synchronizer           
    [AAAAlistener-shinken )
    [YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ ARBITER_NAME  : [ arbiter-master  ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => OldBad login hostand found,password wefor disablethe listener
    


    Si la communication avec le listener-shinken prend trop de temps ( s’il est injoignable ), cette erreur apparaîtra et la création de la carte sera abandonnée. Pour régler ce problème, il faut vérifier que votre listener-shinken est bien joignable.


    Code Block
    themeEmacs
    [YYYYit
    [AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Retrieving host(s) corresponding => Old host [core-hosts-29152912969c436898b717476149e509] disabled on synchronizer     
    [AAAAto this architecture from the Synchronizer ( via listener-shinken )
    [YYYY-MM-DD HH:MM:SS] INFOERROR   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Tried to request the =>listener, 5but hostsit disabledtimed out. 

    Suppression des images des cartes NagVis obsolètes

    Avant de créer les nouvelles cartes, il faut supprimer les anciennes afin de ne pas avoir de doublons et de ne pas charger le disque.

    Les cartes sont découpées en deux parties :

    • Le fond, qui est une image générée par l'architecture-export
    • Le fichier de configuration, qui est généré par l'architecture-export et équivaut aux positions des éléments Shinken dans la carte


    Nous commençons par supprimer les fonds.

    En DEBUG, le chemin de chaque fichier supprimé est affiché

    Exemple

    Voici un exemple d'une suppression de fonds de cartes NagVis

    js
    Code Block
    language
    themeEmacs
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-masterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Removing obsolete NagVis maps backgroundsmap background(s)
    [AAAA-MM-DD HH:MM:SS] DEBUG  : [ arbiter-master INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => [ /etc/shinken/external/nagvis/share/userfiles/images/maps/background_[Shinken]
    _Royaume:_All2021519148-e1bca43a-cdac-4411-9691-870a625b911b.png ] removed
    [AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => [ /etc/shinken/external/nagvis/share/userfiles/images/maps/background_[Shinken]
    _Architecture_Shinken2021519148-e1bca43a-cdac-4411-9691-870a625b911b.png ] removed  

    Suppression des fichiers de configuration des cartes NagVis obsolètes

    Après avoir supprimé les fonds des cartes, il faut supprimer les fichiers de configuration.

    • En DEBUG, le chemin de chaque fichier supprimé est affiché
    Exemple

    Exemple

    Voici un exemple d'une suppression de fichiers de configuration NagVis

    Code Block
    themeEmacs
    [AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Removing obsolete NagVis map configuration(s)
    

    Voici un exemple d'une suppression de fichiers de configuration NagVis

    Code Block
    languagejs
    themeEmacs
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     -   Removing obsolete=> NagVis maps configuration[ /etc/shinken/external/nagvis/etc/maps/shinken_global-e1bca43a-cdac-4411-9691-870a625b911b.cfg ] removed
    [AAAA-MM-DD HH:MM:SS] DEBUGINFO   : [ arbiter-masterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => [ /etc/shinken/external/nagvis/etc/maps/shinken_globalarchitecture-e1bca43a-cdac-4411-9691-870a625b911b.cfg ] removed
    [AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => [ /etc/shinken/external/nagvis/etc/maps/shinken_architectureAll-e1bca43a-cdac-4411-9691-870a625b911b.cfg ] removed
    -4411-9691-870a625b911b.cfg ] removed

    Calcul de la taille des royaumes pour les cartes NagVis

    Les cartes NagVis sont sous forme de blocs imbriqués. Pour pouvoir les créer il faut alors assigner une taille de bloc à chaque royaume. Pour se faire, nous calculons leur taille selon leur contenu :

    • Taille initiale du royaume
    • Taille des sous-royaumes
    • Taille des hôtes
      • Nombre de checks

    Exemple

    Voici un exemple d'un calcul de la taille réussi

    Code Block
    themeEmacs
    [AAAA-MM-DD HH:MM:SS] INFO DEBUG  : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Computing architecture    => [ /etc/shinken/external/nagvis/etc/maps/All-e1bca43a-cdac-4411-9691-870a625b911b.cfg ] removed

    Calcul de la taille des royaumes pour les cartes NagVis

    Les cartes NagVis sont sous forme de blocs imbriqués. Pour pouvoir les créer il faut alors assigner une taille de bloc à chaque royaume. Pour se faire, nous calculons leur taille selon leur contenu :

    • Taille initiale du royaume
    • Taille des sous-royaumes
    • Taille des hôtes
      • Nombre de checks
    Exemple
    objects size

    Tri des royaumes par taille

    nous trions les royaumes selon le paramètre map_realm_layout défini dans la configuration du module ( voir Module architecture-export ).

    Exemples

    Voici un exemple d'un calcul de la tri par taille réussi

    js
    Code Block
    language
    themeEmacs
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Computing architecture objects size

    Tri des royaumes par taille

    Nous trions les royaumes par taille afin d'avoir un rendu agréable à l'œil

    Sorting realms by size


    Et

    Exemple

    Voici un exemple d'un tri réussipar nom

    language
    Code Block
    jsthemeEmacs
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Sorting realms by name

    Génération des cartes NagVis

    C'est à cette étape que les cartes NagVis sont générées. Il y a au total 4 types de fichiers :

    • Un arbre représentant tous les royaumes
    • Une carte détaillée de tous les royaumes
    • Une carte détaillée par royaume
    • Un fichier de configuration de rotation, permettant de faire défiler les cartes NagVis d'une même architecture


    Chaque création de fichier est affiché dans les logs.

    Exemple

    Voici un exemple de génération ayant réussie

    js
    Code Block
    language
    themeEmacs
    [AAAA-MM-DD HH:MM:SS] INFO   : [ ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Generating Nagvis maps
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]        - => Generating realms tree NagvisNagVis mapsmap
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Generating realmsdetailed treearchitecture NagVis map
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Generating detailedNagVis map architecturefor NagVisrealm map[All]
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Generating NagVis map for realm [AllParis]
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Generating rotation configuration for NagVis maps

    Sauvegarde des hôtes listener-shinken dans un fichier de

    rétention

    rétention

    À Afin d'éviter de renvoyer des requêtes au listener-shinken à chaque réception d'architecture, nous sauvegardons le module sauvegarde l'état des hôtes du listener-shinken dans un fichier.

    En DEBUG, le chemin du fichier de rétention est affiché

    Cela permet d'envoyer de demande de creation / modification d'hôte uniquement s’il y a des nouveautés.

    Exemple

    Voici un exemple de sauvegarde de rétention ayant réussie

    js
    Code Block
    language
    themeEmacs
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Saving hostshost(s) sent to listener in retention file
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-master ARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => listener hosts mapping saved in /var/lib/shinken/architecture_export_hosts_mapping.json

    Cas d'erreurs

    Si l'architecture-export n'a pas les droits d'écriture sur le fichier de rétention, cette erreur apparaîtra et la sauvegarde sera abandonnée

    js
    Code Block
    language
    themeEmacs
    [AAAA-MM-DD HH:MM:SS] INFO   : [ arbiter-masterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]     - Saving hostshost(s) sent to listener in retention file
    [AAAA-MM-DD HH:MM:SS] ERROR  : [ arbiter-masterARBITER_NAME     ] [ ARCHITECTURE-EXPORT ] [ ShinkenARCHITECTURE_NAME ] [ MAP GENERATOR ]         => Permission denied on /var/lib/shinken/architecture_export_hosts_mapping.json