Application de l’identification et réconciliation CI aux jeux d’importation
Vous pouvez appliquer des processus d’identification et de rapprochement CMDB lorsque des ensembles de données à importer sont utilisés pour importer des CI dans la CMDB. L’identification des CI peut empêcher les CI en double dans la CMDB, ce que les jeux d’importation pourraient autrement provoquer.
Le remplissage de tables CMDB à l’aide de jeux d’importation peut résulter par inadvertance en la duplication de CI lorsque plusieurs enregistrements importés sont identiques à un CI existant. Pour réduire cette duplication, vous pouvez appliquer des processus d’identification et de rapprochement CMDB aux jeux d’importation lors de l’importation de nouveaux enregistrements dans des tables CMDB.
Transformer le script de carte
(function runTransformScript(source, map, log, target) {
// Call CMDB API to do Identification and Reconciliation of current row
var cmdbUtil = new CMDBTransformUtil();
cmdbUtil.identifyAndReconcile(source, map, log);
ignore = true;
if (cmdbUtil.hasError()) {
var errorMessage = cmdbUtil.getError();
log.error(errorMessage);
} else {
log.info('IE Output Payload: ' + cmdbUtil.getOutputPayload());
log.info('Imported CI: ' + cmdbUtil.getOutputRecordSysId());
}
})(source, map, log, target);La phrase de code ignorer = vrai empêche les jeux d’importation de créer à nouveau le même enregistrement après son traitement par le moteur d’identification.
Processus
- S’il n’est pas dupliqué : insère l’enregistrement dans la table cible.
- En cas de doublon : met à jour le CI existant dans la CMDB, avec les données de l’enregistrement source.
L’API CMDBTransformUtil prétraite les données sources, puis transmet les valeurs d’entrée au moteur d’identification, le jeu d’importation étant la source de données par défaut. L’API CMDBTransformUtil prend en charge un champ cible qui est un champ de référence de la même manière que les jeux d’importation. L’API CMDBTransformUtil prend également en charge un script source, évaluant les scripts sources pour déterminer la valeur cible, qui est ensuite transmise au moteur d’identification. Pour plus d’informations, consultez Création d’une carte de champs.
Spécifier plusieurs tables cibles pour un jeu d’importation
Vous pouvez configurer chaque enregistrement d’un jeu d’importation avec sa propre table cible. Ensuite, au lieu d’insérer tous les enregistrements transformés dans une seule table cible, les enregistrements sont insérés dans les différentes tables cibles spécifiées par enregistrement. Par exemple, vous devrez peut-être insérer certains enregistrements du jeu d’importation dans la classe Computer et d’autres enregistrements dans la classe Server.
- Dans le fichier de source de données, ajoutez une colonne de table cible. Utilisez une chaîne telle que « MaTable » pour étiqueter l’en-tête de colonne. Dans chaque ligne d’enregistrement, entrez la table cible de l’enregistrement, comme un nom de classe CMDB valide tel que « cmdb_ci_computer ».
- Après avoir mappé automatiquement les champs correspondants sur le formulaire Carte de transformation de table, ajoutez une carte de champs pour la colonne de table cible ajoutée afin d’établir une relation entre les classes et les tables cibles dans la CMDB.
- Dans la liste connexe Carte de champ du formulaire Carte de transformation de table, cliquez sur Nouveau.
- Définissez le champ Source sur l’en-tête de la colonne de la table cible que vous avez ajoutée dans le fichier source de données, telle que MyTable.
- Définissez le champ cible sur Classe.
- Cliquez sur Envoyer.
Lorsque vous configurez un jeu d’importation avec plusieurs tables cibles, comme décrit dans les étapes ci-dessus, la table cible spécifiée dans le formulaire Carte de transformation de table n’est pas utilisée.
Restrictions
- Un jeu d’importation doit être associé à une seule carte de transformation. Lors de l’ajout d’un appel à l’API CMDBTransformUtil, assurez-vous qu’il existe encore une seule carte de transformation pour le jeu d’importation.
- L’API CMDBTransformUtil ne vérifie pas si les champs obligatoires ont des valeurs lorsqu’ils sont utilisés avec des ensembles d’importation. Quelle que soit la méthode enforce mandatory fields définie dans la carte de transformation, l’importation de données échoue si un champ obligatoire ne contient pas de valeur.
- L’identification et le rapprochement CI ne peuvent pas être appliqués aux jeux d’importation pour les CI dépendants (CI avec des règles d’identification dépendantes).