Versions Compared

Key

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

Table of Contents
stylenone

Introduction

Dans l'interface de Configuration, les sources peuvent être utilisées

pour 

pour importer des éléments ( voir Définition et utilisations des sources pour plus de détail). Chaque objet trouvé dans les sources est ensuite affiché en tant que Nouveau ou présente des Différences sur les objets déjà présents dans Staging.

Lors de l'import d'éléments depuis les sources, des erreurs ou avertissements peuvent être remontés. Ces différents avertissements et leur résolution sont décrits dans les sections suivantes.

panel

titleSommaire

Table of Contents
maxLevel2

Impossible d'écrire dans le fichier de configuration

Lors de l'import d'un fichier de configuration, Shinken peut avoir besoin d'écrire dedans pour y mettre des informations sur les

objects

objets qu'il vient d'importer (pour éviter de les importer en double).

Panel

Image Added

Si Shinken n'a pas les droits d'écriture sur un fichier de configuration qu'il essaye d'importer, l'import de la source est stoppé et le message d'erreur suivant est affiché.


Pour résoudre ce problème, il faut donner les droits en écriture sur le fichier en question (le chemin vers le fichier est présent dans le message d'erreur). La manière la plus simple est d'attribuer la propriété du fichier à l'utilisateur Shinken:

Code Block
chown shinken:shinken 
mon_fichier
/etc/shinken-user/source-data/cfg-documentation/edition_element/commands.cfg


D'autres méthodes permettant à l'utilisateur "shinken" d'écrire dans le fichier de configuration peuvent être utilisées.

warning


Note
titleErreur listée pour la recherche sur cette page
CRITIQUE:

Le chargement de la configuration a échoué avec les erreurs suivantes :

*

Cannot

[config] cannot open config file '/etc/shinken-user/source-data/

source-data-

cfg-

testpack-import/./elements/test

documentation/edition_element/commands.cfg' for reading:

 

[Errno 13] Permission denied: u'/etc/shinken-user/source-data/

source-data-

cfg-

testpack-import/./elements/test

documentation/edition_element/commands.cfg'

PanelImage Removed

Propriété manquante

Certains

élements

éléments importés sont ignorés lorsqu'il manque une propriété obligatoire. Quand c'est le cas, un message affichant la propriété manquante est affiché dans le résultat de la source.

Panel

Image Added


Dans l'exemple, la source contient un hôte sur lequel la propriété "host_name" n'est pas définie.


Note
titleErreur listée pour la recherche sur cette page

L'élément Hôte

nommé 

nommé [ HOST_NAME ] importé depuis la source cfg-import:/etc/shinken-user/source-data/source-data-cfg-testpack-import/elements/elts.cfg:34 comporte des anomalies :
- Nom d'élément manquant

Panel

Image Removed


Propriété inconnue

Quand une propriété non obligatoire est inconnue, l'élément est importé, mais la propriété inconnue est ignorée. La propriété est affichée dans le message d'avertissement sur la source qui contient l'élément.

Panel

Image Added


Dans l'exemple, on voit qu'une erreur a été faite sur le nom du champ "

address

addresss".


Note
titleErreur listée pour la recherche sur cette page

L'élément Hôte

nommé [ My_Host ] importé depuis la source cfg-import:/etc/shinken-user/source-data/source-data-cfg-testpack-import/elements/elts.cfg:34

nommé [ customer4-switch ] comporte des anomalies :

-
  • Propriété ignorée : la propriété
address
  • addresss est inconnue
PanelImage Removed

Propriété non valide ignorée

Quand une propriété définie dans une source possède une valeur incorrecte, cette propriété est ignorée, et l'erreur est

indiqué

indiquée.

Panel

Image Added


Dans l'exemple, la valeur de la propriété "check_interval" doit être un entier positif ou -1, mais une chaîne de caractères a été spécifiée. Le champ est donc ignoré pour cet élément.


Note
titleErreur listée pour la recherche sur cette page

L'élément Hôte

nommé [ My_Host ] importé depuis la source cfg-import:/etc/shinken-user/source-data/source-data-cfg-testpack-import/elements/elts.cfg:34

nommé [ customer4-swith ] comporte des anomalies :

-
  • Propriété ignorée : la propriété check_interval doit contenir une valeur numérique
Panel

Image Removed

Propriété non valide modifiée

Des propriétés valides, mais

malformées

mal formées peuvent également être

importés

importées, avec un reformatage effectué par le mécanisme d'import des sources. Lorsque l'import des sources modifie certaines valeurs de propriétés d'éléments importés, un message d'avertissement indique l'opération effectuée sur la propriété.

Panel

Image Added


Dans

le premier

cet exemple, Shinken indique que la donnée _HOSTCUSTOM_DATA trouvée dans la commande "Command1" a été mise en majuscule pour des raisons de cohérence.


Note
titleErreur listée pour la recherche sur cette page

L'élément "commands

nommé 

" nommé [ Command1 ] importé depuis la source cfg-import:/etc/shinken-user/source-data/source-data-cfg-testpack-import/elements/elts.cfg:40 a été modifié pour les raisons suivantes:
- Avertissement: Les noms de macros doivent être en majuscules. Les macros suivantes ont donc été transformées en majuscules dans la ligne de commande : _HOSTCUSTOM_DATA

Panel

Image Removed

Le deuxième exemple indique que la propriété display_name de l'hôte "My_Host" a été transformée pour des raisons de sécurité

Note
titleErreur listée pour la recherche sur cette page
L'élément Hôte nommé [ My_Host ] importé depuis la source cfg-import:/etc/shinken-user/source-data/source-data-cfg-testpack-import/elements/elts.cfg:34 comporte des anomalies :
- Pour des raisons de sécurité, les caractères suivants [ <>&"'/ ] ont été remplacés par des équivalents dans le champ display_name.

Panel

Image Removed

Propriété interdite

Quand une propriété non obligatoire est interdite (clé obsolète), l'élément est importé, mais la propriété interdite est ignorée. La propriété est affichée dans le message d'avertissement sur la source qui contient l'élément.

Panel

Image Added


Dans l'exemple, on voit que la propriété "checkmodulations" tente d'être utilisée, alors que cette clé n'est plus valide dans la version de Shinken Enterprise.


Note
titleErreur listée pour la recherche sur cette page

L'élément Hôte

nommé 

nommé [

] importé depuis la source cfg-import:/etc/shinken-user/source-data/source-data-cfg-testpack-import/elements/x.cfg:1

customer-6 ] comporte des anomalies :

-
  • Propriété ignorée : la propriété checkmodulations est interdite
. PanelImage Removed

Incohérence entre un élément et un groupe

Lors de l'import si un groupe possède un membre et que ce même membre possède dans sa définition un groupe défini à 'null', l'import ne

peux

peut choisir si l'élément est ou n'est pas dans le groupe.

Panel

Image Added


Vous devez modifier la définition de l'élément.

Note
titleErreur listée pour la recherche sur cette page

Erreur : l'élément Hôte

nommé [ my linux server

nommé [ customer-6 ] importé depuis les

sources  [ cfg-file-shinken 

sources [ documentation,syncui ] définit la propriété hostgroups à null alors que l'élément Groupe d'hôtes

nommé 

nommé [

group france 

France ] importé depuis

les sources [ cfg-file-shinken 

la source [ documentation ] définit la valeur

my linux server

customer-6 dans la propriété "members".

panel

Image Removed

Conflits lors de l'import des objets

Précisions sur le fonctionnement de l'import des sources

Le mécanisme d'import permet également d'importer un objet dont la définition est répartie entre plusieurs sources. Un hôte par exemple, peut être présent dans 2 sources (ou plus):

  • La première (fichier Cfg), définit un certain nombre de propriétés, comme son nom, adresse ainsi que quelques modèles à utiliser
  • La deuxième (Découverte réseau), définit un certain nombre de propriétés supplémentaires comment des modèles d'hôte à utiliser.

L'objet final sera donc un hôte ayant les propriétés de la première et de la deuxième source.

Lorsque les sources sont importées, l'interface de Configuration mélange les éléments qui possèdent au moins une clé de synchronisation commune.
Les clés de synchronisation utilisées dépendent du type de l'élément:

Hôtes: Nom, adresse, SE

_

UUID (Identifiant unique pouvant être défini dans les fichiers de configuration)
  • Checks: SE_UUID
  • Autres: Nom de l'élément,

    SE_UUID

    Par exemple, 2 hôtes avec la même adresse seront regroupés par le mécanisme d'import des sources en un seul hôte. Les 2 hôtes suivants:

    Code Block
    define host {
        host_name          Hote 1
        address            localhost
        propriété_commune  valeur1
        propriété1         valeur1
    }
    
    
    define host {
        host_name          Hote 2
        address            localhost
        propriété_commune  valeur2
        propriété2         valeur2
    }

    seront regroupés en un seul hôte contenant les 2 propriétés:

    Code Block
    define host {
        host_name          Hote 1
        address            localhost
        propriété_commune  valeur1
        propriété1         valeur1
        propriété2         valeur2
    } 

    L'hôte résultant de la fusion des 2 hôtes ayant une clé de synchronisation commune contient les propriétés définies sur les hôtes ayant cette clé commune.

    Lorsque la même propriété est définie par plusieurs hôtes, la première valeur définie est prise. Dans l'exemple, on voit que la propriété commune a pour valeur la première valeur définie, soit "valeur1".

    Cas spécial du SE_UUID

    Parmi les clés de synchronisation d'un objet, le SE_UUID est traité d'une manière différente.

    Lorsqu'un élément possède un SE_UUID dans sa définition, il est considéré comme unique dans le mécanisme d'import des sources, et il ne sera pas fusionné avec un élément ayant un SE_UUID différent. Il peut par contre toujours être fusionné avec des éléments sans SE_UUID ou avec d'autres éléments ayant le même SE_UUID.

    C'est utile dans le cas où on veut définir 2 hôtes avec la même adresse par exemple. Le SE_UUID permet de dire qu'il s'agit de 2 hôtes distincts et ils ne seront pas fusionnés.

    Code Block
    define host {
    
       # Shinken Enterprise. Lines added by import core. Do not remove it, it's used by Shinken Enterprise to update your objects if you re-import them.
          _SE_UUID             core-service-60f9373a47d511e8a3c1080027a3ae8c
          _SE_UUID_HASH        61917cb49e8f3b524ee2e9482f59a2e9
       # End of Shinken Enterprise part
    
        host_name               Host 1
        address                 host_addr
    }
    
    define host {
    
       # Shinken Enterprise. Lines added by import core. Do not remove it, it's used by Shinken Enterprise to update your objects if you re-import them.
          _SE_UUID             core-service-6454ba8a47d511e897f8080027a3ae8c
          _SE_UUID_HASH        bc7ea10870bdcb985dd1ba4dbcc62688
       # End of Shinken Enterprise part
    
    
        host_name               Host 2
        address                 host_addr
        retry_interval          4
        check_running_timeout   4
    }

    Les 2 hôtes ne seront pas fusionnés à cause de la présence du SE_UUID.

    Un SE_UUID à la forme suivante:

    Info

    _UUID core-type_element-identifiant_unique

    • type_element: Le type de l'élément sur lequel on veut spécifier ce SE_UUID. Les différentes valeurs possibles sont les différents types définissables par fichier de configuration: host, service, contact,...
    • identifiant_unique: Chaine de caractères (alphanumériques) permettant d'identifier de manière unique l'élément.
    SE_UUID

    dupliqué

    Erreur

    Le _SE_UUID permet d'identifier de manière unique un élément dans un fichier de configuration.

    Panel

    Image Added


    Lorsque le même _SE_UUID est présent 2 fois dans les sources, Shinken marque les 2 objets ayant le même _SE_UUID comme invalides et n'importe pas la source contenant l'erreur pour ne pas provoquer d'erreurs supplémentaires.

    Cette erreur est courante lorsqu'on copie un fichier ou la définition d'un élément sans changer les _SE_UUID des objets.


    Warning
    titleErreur listée pour la recherche sur cette page
    ERREUR:

    Certains éléments ont des entrées _SE_UUID

    dupliquées

    dupliqués, cela n'est pas autorisé et ce champ doit être unique.
    Ils sont situés dans les fichiers de configuration

    -
    • /etc/shinken-user/source-data/
    source-data-
    • cfg-
    testpack-import/./elements/elts
    • documentation/edition_element/hosts.cfg:
    1
    • 40
    -
    • /etc/shinken-user/source-data/
    source-data-
    • cfg-
    testpack-import/./elements/elts
    • documentation/edition_element/hosts.cfg:
    11
    • 59
    Panel

    Image Removed

    Résolution

    L'erreur à l'import indique le fichier et la ligne des éléments à problème. Supprimer ou changer les _SE_UUID de ces objets suffit pour résoudre le conflit.

    L'élément peut être fusionné avec plusieurs éléments existants

    Erreur

    Quand un élément est importé depuis les sources, Shinken regarde dans les différents espaces de données s'il existe un élément existant avec lequel il peut être fusionné.

    Par exemple, si on définit un hôte dans une source, et qu'il existe déjà un hôte avec la même adresse ou le même nom dans Staging, Shinken fusionne ces hôtes car il y a de très grandes chances qu'il s'agisse de la même machine.

    Si un élément importé d'une source peut être fusionné avec plusieurs éléments existants, Shinken n'effectue pas de fusion arbitraire, mais affiche un avertissement indiquant l'erreur.

    Le schéma suivant illustre ce cas de figure:

    Panel

    Image Removed

    Note
    titleErreur listée pour la recherche sur cette page

    Elément ignoré: Shinken ne peut pas déterminer dans quel élément Hôte existant intégrer les propriétés de l'élément Hôte nommé [ Host 1 ] importé depuis les sources [ cfg-file-testpack-import, syncui ] .
    Les elements Hôtes existants trouvés sont :
    - Host 1
    - Host 2

    Tous ces éléments ont des clés de synchronisation communes (par exemple nom, adresse, SE_UUID, ...).
    Veuillez consulter la page de documentation des sources pour corriger ce problèmes.

    Panel

    Image Removed

    Résolution

    Changer le nom et/ou l'adresse de l'élément importé. Un conflit de nom est très souvent une erreur d'inattention. Changer le nom de l'hôte permet de résoudre le conflit. L'élément importé depuis les sources sera alors fusionné avec l'élément de Staging qui a la même adresse (ou autre clé de synchronisation)

    L'éléments peut être fusionné avec plusieurs éléments des sources (clés de synchronisation communes avec d'autres éléments mais _SE_UUID différents)

    Erreur

    Lorsque des éléments sont importés avec des _SE_UUID, Shinken les

    empeche

    empêche d'être fusionnés avec des éléments de _SE_UUID différents. Un élément présent dans une source qui ne possède pas de _SE_UUID peut être fusionné avec un autre élément qui a une clé de synchronisation commune.


    Panel

    Image Added


    Mais, quand un élément d'une source a plusieurs éléments distincts avec lesquels il peut être fusionné, Shinken ne peut pas décider avec quel élément le fusionner. Dans ce cas, plutôt que de choisir arbitrairement un élément pour la fusion des propriétés, Shinken affiche un avertissement indiquant le problème.

    Le schéma suivant illustre le problème:

    Panel

    Image Modified

    Note
    titleErreur listée pour la recherche sur cette page

    Elément ignoré: L'élément Hôte nommé [ Host 1 ] importé depuis les sources [ cfg-file-testpack-import ] est en conflit avec les 3 éléments suivants:
    - L'élément host nommé [ Host ] importé depuis la source [ cfg-file-testpack-import ] dans le fichier [ cfg-import:/etc/shinken-user/source-data/source-data-cfg-testpack-import/elements/elts.cfg:1 ] avec les clés [ host_addr,host,core-host-719e2ebc486911e88974080027a3ae8c ]
    - L'élément host nommé [ Host bis ] importé depuis la source [ cfg-file-testpack-import ] dans le fichier [ cfg-import:/etc/shinken-user/source-data/source-data-cfg-testpack-import/elements/elts.cfg:12 ] avec les clés [ host_addr,host bis,core-host-75ae7296486911e88532080027a3ae8c ]
    - L'élément host nommé [ Host 1 ] importé depuis la source [ cfg-file-testpack-import ] dans le fichier [ cfg-import:/etc/shinken-user/source-data/source-data-cfg-testpack-import/elements/elts.cfg:23 ] avec les clés [ host 1, host_addr ]

    Tous ces éléments contiennent des clés de synchronisation communes, mais des _SE_UUID différents. Shinken ne peut pas déterminer comment regrouper les propriétés de ces éléments. Veuillez consulter la page de documentation pour corriger ce problème.

    PanelImage Removed

    Résolution

    Plusieurs solutions sont envisageables pour résoudre ce problème:

    Si il
    • S’il ne faut pas que l'hôte "Host 1" soit fusionné, lui positionner un _SE_UUID. 
    • Si "Host 1" doit être fusionné systématiquement avec "Host" ou "Host bis", il faut lui mettre le même _SE_UUID que l'élément avec lequel il doit être fusionné. Une autre solution, si applicable, peut être de ne pas répartir la définition d'un même élément dans plusieurs fichiers de configuration pour éviter les problèmes de ce type.