CI-Identifizierung und -Abgleich auf Importsätze anwenden
Sie können CMDB-Identifizierungs- und -Abgleichsprozesse anwenden, wenn Importsätze zum Importieren von CIs in die CMDB verwendet werden. Durch die CI-Identifizierung können doppelte CIs in der CMDB verhindert werden, die Import Sets sonst verursachen könnten.
Das Auffüllen von CMDB-Tabellen mit Import Sets kann unabsichtlich zu doppelten CIs führen, wenn mehrere importierte Datensätze mit einem vorhandenen CI identisch sind. Um diese Duplizierung zu minimieren, können Sie CMDB-Identifikations- und -Abgleichprozesse auf Importsätze anwenden, wenn Sie neue Datensätze in CMDB-Tabellen importieren.
Transform Map-Skript
(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);Der Code-Satz ignore = true verhindert, dass Import Sets denselben Datensatz erneut erstellen, nachdem er von der Identifizierungsmaschine verarbeitet wurde.
Prozess
- Wenn nicht doppelt vorhanden: Fügt den Datensatz in die Zieltabelle ein.
- Wenn doppelt vorhanden: Aktualisiert das vorhandene CI in der CMDB mit Daten aus dem Quelldatensatz.
Die CMDBTransformUtil-API verarbeitet die Quelldaten vor und übergibt dann die Eingabewerte an die Identifizierungs-Engine, wobei der Importsatz standardmäßig die Datenquelle ist. Die API „CMDBTransformUtil“ unterstützt ein Zielfeld, das ein Referenzfeld ist, auf dieselbe Weise wie Import Sets es unterstützt. Die API „CMDBTransformUtil“ unterstützt auch ein Quellskript, bei dem Quellskripts ausgewertet werden, um den Zielwert zu ermitteln, der dann an die Identifizierungsmaschine übergeben wird. Weitere Informationen finden Sie unter Feldzuordnung erstellen.
Geben Sie mehrere Zieltabellen für einen Importsatz an
Sie können jeden Datensatz in einem Importsatz mit einer eigenen Zieltabelle konfigurieren. Dann werden die transformierten Datensätze nicht in eine einzige Zieltabelle eingefügt, sondern in die verschiedenen Zieltabellen, die pro Datensatz angegeben werden. Beispielsweise müssen Sie möglicherweise einige Datensätze aus dem Importsatz in die Klasse „Computer“ und andere Datensätze in die Klasse „Server“ einfügen.
- Fügen Sie in der Datenquellendatei eine Zieltabellenspalte hinzu. Verwenden Sie eine Zeichenfolge wie „MyTable“, um den Spaltenheader zu beschriften. Geben Sie in jeder Datensatzzeile die Zieltabelle für den Datensatz als gültigen CMDB-Klassennamen ein, z. B. „cmdb_ci_computer“.
- Fügen Sie nach der automatischen Zuordnung passender Felder im Formular „Tabellentransformationszuordnung“ eine Feldzuordnung für die hinzugefügte Zieltabellenspalte hinzu, um eine Beziehung zwischen Klassen und den Zieltabellen in der CMDB herzustellen.
- Klicken Sie in der zugehörigen Liste „Feldzuordnung“ im Formular „Tabellentransformationszuordnung“ auf Neu.
- Legen Sie das Feld Quelle auf den Header der Zieltabellenspalte fest, die Sie in der Datenquellendatei hinzugefügt haben, z. B. MyTable.
- Legen Sie das Zielfeld auf Klassefest.
- Klicken Sie auf Absenden.
Wenn Sie einen Importsatz mit mehreren Zieltabellen wie in den obigen Schritten beschrieben konfigurieren, wird die im Formular „Tabellentransformationszuordnung“ angegebene Zieltabelle nicht verwendet.
Beschränkungen
- Ein Import Set sollte einer einzelnen Transform Map zugeordnet werden. Stellen Sie beim Hinzufügen eines Aufrufs zur API „CMDBTransformUtil“ sicher, dass noch eine einzelne Transform Map für das Import Set vorhanden ist.
- Die CMDBTransformUtil-API prüft nicht, ob Pflichtfelder Werte enthalten, wenn sie mit Importsätzen verwendet werden. Unabhängig davon, wie enforce mandatory fields in der Transformationszuordnung festgelegt ist, schlägt der Datenimport fehl, wenn ein Pflichtfeld keinen Wert enthält.
- CI Identification and Reconciliation kann nicht auf Import Sets für abhängige CIs (CIs mit abhängigen Identifizierungsregeln) angewendet werden.