CMDBTransformUtil - 전역
CMDBTransformUtil 클래스는 IRE(식별 및 조정) 프레임워크를 사용하여 중복 CI(구성 항목) 생성을 최소화합니다.
또한 IRE 프레임워크는 onBefore 변환 맵 스크립트를 업데이트할 CMDB 때 인증된 소스의 정보만 승인하여 CI 속성을 조정합니다. 다른 스크립트에서는 이 클래스를 사용할 수 없습니다. 식별 및 조정 프레임워크의 작동 방식에 대한 자세한 내용은 CMDB 식별 및 조정을 참조하십시오.
CMDBTransformUtil - CMDBTransformUtil()
CMDBTransformUtil 객체를 만듭니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
var cmdbUtil = new CMDBTransformUtil();
CMDBTransformUtil - getError()
이전 identifyAndReconcile() 또는 identifyAndReconcileEnhanced() 메서드 호출에서 생성된 오류를 반환합니다.
onBefore 변환 맵 스크립트에서 이 메서드를 사용하여 오류를 가져옵니다. hasError() 메서드를 사용하여 identifyAndReconcile() 또는 identifyAndReconcileEnhanced() 메서드에서 오류를 먼저 감지합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | identifyAndReconcile() 또는 identifyAndReconcileEnhanced()의 오류 메시지입니다. |
// Add this code to the onBefore transform map script
// Call CMDB API to do Identification and Reconciliation of the current row
var cmdbUtil = new CMDBTransformUtil();
cmdbUtil.setDataSource('ImportSet');
cmdbUtil.identifyAndReconcileEnhanced(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());
}
범위가 지정된 등가
이 메서드에 해당하는 범위가 지정되지 않았습니다.
CMDBTransformUtil - getOutputPayload()
이전 identifyAndReconcile() 또는 identifyAndReconcileEnhanced() 메서드 호출에서 JSON 페이로드를 반환합니다.
onBefore 변환 맵 스크립트에서 이 메서드를 사용합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| <문자열> | 입력 문자열의 구성 항목에 대한 결과 목록인 JSON 형식의 문자열입니다. 각 결과 문자열은 'items: [{}], relations:[{}]' 형식이며, 항목 및 관계 목록 내의 각 항목에는 이름-값 쌍이 포함됩니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedItems | 현재 반환된 값이 없습니다. |
| <String>.additionalCommittedRelations | 현재 반환된 값이 없습니다. |
| <String>.items | 생성되거나 업데이트된 CI를 설명하는 객체 목록입니다. 데이터 유형: 배열 |
| <String>.items.additionalRelatedItems | 처리되었지만 입력 페이로드의 일부로 제공되지 않은 추가 조회 및 관련 항목에 대한 정보를 제공하는 JSON 객체 목록입니다. 이러한 항목은 부분 페이로드에서 가져온 것입니다. 이 정보는 현재 반환되지 않습니다. 데이터 유형: 배열 |
| <String>.items.additionalRelatedItems.className | 작성되거나 업데이트된 CI의 클래스/테이블 이름(sys_class_name)입니다. 데이터 유형: 문자열 |
| <String>.items.additionalRelatedItems.inputIndices | 해당 입력 항목의 인덱스입니다. 최상위 항목의 경우 정수 목록입니다. 관련 항목 또는 조회 항목의 경우 JSON 객체의 목록입니다. 데이터 유형: 숫자 배열 또는 객체 배열 |
| <문자열>.items.additionalRelatedItems.inputIndices.mainIndex | 추가 관련 항목의 CI 상위에 해당하는 요청 본문 items 배열의 인덱스 값입니다. 데이터 유형: 숫자 |
| <String>.items.additionalRelatedItems.inputIndices.subIndex | 추가 관련 항목에 해당하는 요청 본문 items.lookup 배열의 인덱스 값입니다. 데이터 유형: 숫자 |
| <String>.items.additionalRelatedItems.operation | 작업 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.items.additionalRelatedItems.sysId | 추가 관련 항목의 Sys_id입니다. 데이터 유형: 문자열 |
| <String>.items.className | 작성되거나 업데이트된 CI의 클래스/테이블 이름(sys_class_name)입니다. 데이터 유형: 문자열 |
| <String>.items.duplicateIndices | 현재 항목과 중복되는 CI의 인덱스 목록입니다. 데이터 유형: 배열 |
| <String>.items.errorCount | 오류 수입니다. 데이터 유형: 숫자 |
| <String>.items.errors | 각 객체가 이 CI를 처리하는 동안 발생한 오류를 설명하는 객체의 배열입니다. 데이터 유형: 배열 |
| <문자열>.items.errors.error | CI를 처리하는 동안 발생한 오류의 유형입니다. 데이터 유형: 문자열 |
| <String>.items.errors.message | 오류와 관련된 오류 메시지입니다. 데이터 유형: 문자열 |
| <String>.items.identificationAttempts | CI를 식별하기 위해 시도한 목록입니다. 데이터 유형: 배열 |
| <String>.items.identificationAttempts.attemptResult | CI를 식별하려는 시도의 결과입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.items.identificationAttempts.attributes | 식별 프로세스 중에 사용된 CI 식별자 항목 속성 목록입니다. 데이터 유형: 배열 속성 이름과 유형은 요청 본문 데이터와 사용 중인 식별자(예: )에 따라 달라집니다. |
| <String>.items.identificationAttempts.hybridEntryCiAttributes | 현재 반환된 값이 없습니다. |
| <String>.items.identificationAttempts.identifierName | 이 CI 식별 시도에 사용되는 식별자 규칙입니다. 데이터 유형: 문자열 |
| <String>.items.identificationAttempts.searchOnTable | 식별 프로세스 중에 검색되는 테이블의 이름입니다. 데이터 유형: 문자열 |
| <String>.items.identifierEntrySysId | CI를 식별하는 데 사용되는 식별자 규칙에 대한 Sys_id입니다. 식별자 항목 [cmdb_identifier_entry] 테이블에 있습니다. 데이터 유형: 문자열 |
| <문자열>.items.info | 항목 처리에 대한 추가 정보가 들어 있는 객체의 목록입니다. 데이터 유형: 배열 |
| <문자열>.items.info.code | 건너뛴 재분류 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.items.info.message | 재분류를 건너뛰는 이유에 대한 추가 통찰력을 제공하는 메시지입니다. 데이터 유형: 문자열 |
| <String>.items.info.ruleSysId | 일치하는 재분류 제한 규칙의 Sys_id입니다. 재분류 제한 규칙으로 인해 IRE가 재분류를 건너뛸 때만 적용할 수 있습니다. 페이로드 또는 전역 플래그로 인해 재분류를 건너뛸 경우 이 값은 비어 있습니다. 데이터 유형: 문자열 |
| <String>.items.inputIndices | 이 CI에 해당하는 요청 본문 items 배열의 CI에 대한 인덱스 값입니다. 데이터 유형: 배열 |
| <String>.items.maskedAttributes | 조정 규칙에 정의된 대로 신뢰할 수 없는 데이터 소스에 의한 업데이트를 건너뛴 속성 목록입니다. 데이터 유형: 배열 |
| <String>.items.relatedItems | 처리된 관련 항목에 대한 정보를 제공하는 JSON 객체의 목록입니다. 데이터 유형: 배열 |
| <String>.items.relatedItems.className | 관련 항목의 클래스/테이블 이름(sys_class_name)입니다. 데이터 유형: 문자열 |
| <String>.items.relatedItems.errors | 처리 중에 발생한 오류 목록입니다. 데이터 유형: 배열 |
| <String>.items.relatedItems.errorCount | 처리 중에 탐지된 오류 수입니다. 데이터 유형: 숫자 |
| <String>.items.relatedItems.inputIndices | 해당 관련 항목의 인덱스입니다. 데이터 유형: 배열 또는 숫자 |
| <String>.items.relatedItems.inputIndices.mainIndex | 관련 항목의 CI 상위에 해당하는 요청 본문 items 배열의 정수 값입니다. 데이터 유형: 숫자 |
| <문자열>.items.relatedItems.inputIndices.subIndex | 관련 항목에 해당하는 요청 본문 items.lookup 배열의 정수 값입니다. 데이터 유형: 숫자 |
| <String>.items.relatedItems.operation | 작업 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.items.relatedSysIds | 요청 본문 items.lookup 배열에서 관련 항목(테이블 조회 항목)에 대한 sys_id 값 목록입니다. 주목할 만한 값 - null: 이 관련 항목에 대해 식별된 sys_id 없습니다. 데이터 유형: 배열 |
| <문자열>.items.sys_id | 업데이트되거나 생성된 CI의 Sys_id입니다. 데이터 유형: 문자열 |
| <문자열>.관계 | 처리된 관계에 대한 정보를 제공하는 JSON 객체의 목록입니다. 데이터 유형: 배열 |
| <String>.relations.className | 이 종속 관계 CI의 Sys_class_name입니다. 지원되는 값만: cmdb_rel_ci: CI 관계 테이블. 데이터 유형: 문자열 |
| <String>.relations.errorCount | 오류 수입니다. 데이터 유형: 숫자 |
| <String>.relations.inputIndices | 해당 입력 관계의 인덱스입니다. 데이터 유형: 배열 |
| <String>.relations.operation | 수행된 작업의 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.relations.sysId | 종속 관계 CI의 Sys_id입니다. 데이터 유형: 문자열 |
// Add this code to the onBefore transform map script
// Call CMDB API to do Identification and Reconciliation of the current row
var cmdbUtil = new CMDBTransformUtil();
cmdbUtil.setDataSource('ImportSet');
cmdbUtil.identifyAndReconcileEnhanced(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());
}
범위가 지정된 등가
이 메서드에 해당하는 범위가 지정되지 않았습니다.
CMDBTransformUtil - getOutputRecordSysId()
삽입하거나 업데이트한 CI(구성 항목)의 sys_id 반환합니다.
onBefore 변환 맵 스크립트에서 이 메서드를 사용합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 삽입하거나 업데이트한 CI의 Sys_id입니다. |
// Add this code to the onBefore transform map script
// Call CMDB API to do Identification and Reconciliation of current row
var cmdbUtil = new CMDBTransformUtil();
cmdbUtil.setDataSource('ImportSet');
cmdbUtil.identifyAndReconcileEnhanced(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());
}
범위가 지정된 등가
이 메서드에 해당하는 범위가 지정되지 않았습니다.
CMDBTransformUtil - getPayload(객체 소스, 객체 맵, 객체 로그)
지정된 입력에서 작성된 JSON 페이로드를 반환합니다.
그런 다음 페이로드를 수정하고 setPayload() 메서드를 사용하여 업데이트된 페이로드를 저장할 수 있습니다. 페이로드가 수정되고 저장되면 identifyAndReconcile() 또는 identifyAndReconcileEnhanced()를 사용하여 페이로드를 처리합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| source | 개체 | 수신 기록을 보유하는 변환 맵 스크립트에서 사용할 수 있는 전역 객체입니다. |
| 맵 | 객체 | 현재 변환 맵 기록을 보유하는 변환 맵 스크립트에서 사용할 수 있는 맵 객체입니다. |
| log | 객체 | 변환 맵 스크립트에서 사용할 수 있는 로그 객체입니다. |
| 매개변수 | 설명 |
|---|---|
| <문자열> | 입력 문자열의 구성 항목에 대한 결과 목록인 JSON 형식의 문자열입니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedItems | 현재 페이로드의 IRE 처리 중에 커밋되었지만 현재 입력 페이로드에 없는 CI 목록입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedItems.className | 이 추가 CI의 Sys_class_name입니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedItems.errorCount | 이 추가 CI를 처리하는 동안 발생한 오류 수입니다. 데이터 유형: 숫자 |
| <String>.additionalCommittedItems.errors | 이 추가 CI를 처리하는 동안 발생한 오류를 설명하는 객체 배열입니다. 데이터 유형: 배열 |
| <문자열>.additionalCommittedItems.errors.error | 추가 CI를 처리하는 동안 발생한 오류의 유형입니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedItems.errors.message | 추가 CI를 처리하는 동안 발생한 오류 메시지입니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedItems.identificationAttempts | 각 객체가 이 추가 CI를 식별하기 위한 시도를 설명하는 객체의 배열입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedItems.identificationAttempts.attemptResult | 이 추가적인 CI 식별 시도의 결과입니다. 데이터 유형: 문자열 가능한 값:
|
| <String>.additionalCommittedItems.identificationAttempts.attributes | 이러한 추가적인 CI 식별 시도 중 사용되는 CI 식별자 항목 속성의 배열입니다. 데이터 유형: 배열 속성 이름과 유형은 요청 본문 데이터와 사용 중인 식별자(예: )에 따라 달라집니다. |
| <String>.additionalCommittedItems.identificationAttempts.hybridEntryCiAttributes | 이러한 추가적인 CI 식별 시도 중 사용되는 CI 식별자 항목 속성의 배열입니다. 데이터 유형: 배열 속성 이름과 유형은 요청 본문 데이터와 사용 중인 식별자(예: )에 따라 달라집니다. |
| <String>.additionalCommittedItems.identificationAttempts.identifierName | 이 추가적인 CI 식별 시도에 사용되는 식별자 규칙입니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedItems.identificationAttempts.searchOnTable | 이 추가 CI 식별 시도를 위해 검색된 테이블의 이름입니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedItems.identifierEntrySysId | 이 추가 CI를 식별하는 데 사용되는 식별자 규칙에 대한 Sys_id입니다. 주목할 만한 값 - 알 수 없음: 이 추가 CI를 식별하지 못했습니다. 자세한 내용은 errors 문서를 참조하십시오. |
| <String>.additionalCommittedItems.inputIndices | 이 추가 CI에 해당하는 요청 본문 items 배열의 CI에 대한 인덱스 값 배열입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedItems.markers | 내부에서 사용할 마커 값의 배열입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedItems.mergedPayloads | 이 추가 CI를 처리하는 동안 병합된 CMDB IRE 부분 페이로드 [cmdb_ire_partial_payloads] 테이블의 부분 페이로드에 대한 sys_id 값의 배열입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedItems.operation | 이 추가 CI에 대해 수행된 운영입니다. 데이터 유형: 문자열 가능한 값:
|
| <String>.additionalCommittedItems.sysId | 식별을 통해 이 추가 CI에 대한 Sys_id 찾을 수 있습니다. 데이터 유형: 문자열 주목할 만한 값 - 알 수 없음: 이 추가 CI를 식별하지 못했습니다. 자세한 내용은 errors 문서를 참조하십시오. |
| <String>.additionalCommittedItems.warnings | 이 추가 CI를 처리하는 동안 발생한 경고를 설명하는 객체 배열입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedItems.warnings.error | 이 추가 CI를 처리하는 동안 발생한 경고 유형입니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedItems.warnings.message | 이 추가 CI를 처리하는 동안 발생한 경고 메시지입니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedRelations | 삽입 또는 업데이트할 요청 본문 relations 목록에 포함되지 않은 종속 관계 CI를 설명하는 객체의 배열입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedRelations.className | 이 추가 종속 관계 CI의 sys_class_name입니다. 데이터 유형: 문자열 지원하는 값만: cmdb_rel_ci: CI 관계 테이블입니다. |
| <String>.additionalCommittedRelations.errorCount | 이 추가 종속 관계 CI를 처리하는 동안 발생한 오류 수입니다. 데이터 유형: 숫자 |
| <String>.additionalCommittedRelations.errors | 이 추가 종속 관계 CI를 처리하는 동안 발생한 오류를 설명하는 객체 배열입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedRelations.errors.error | 추가 종속 관계 CI를 처리하는 동안 발생한 오류의 유형입니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedRelations.errors.message | 이 추가 종속 관계 CI를 처리하는 동안 발생한 오류 메시지입니다. 데이터 유형: 문자열 |
| <String>.additionalCommittedRelations.inputIndices | 이 추가 종속 관계 CI에 해당하는 요청 본문 relations 배열의 종속 관계 CI 객체에 대한 인덱스 값입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedRelations.markers | 내부에서 사용할 마커 값입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedRelations.mergedPayloadIds | 이 추가 종속 관계 CI를 처리하는 동안 병합된 이 CI에 대해 병합된 CMDB IRE 부분 페이로드 [cmdb_ire_partial_payloads] 테이블의 부분 페이로드에 대한 Sys_id 값입니다. 데이터 유형: 배열 |
| <String>.additionalCommittedRelations.operation | 추가 종속 관계 CI에 대해 수행된 작업입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.hasError | 항목 또는 관계에 오류가 있는지 여부를 나타내는 플래그입니다. 데이터 유형: 부울 |
| <String>.hasWarning | 항목 또는 관계에 경고가 있는지 여부를 나타내는 플래그입니다. 데이터 유형: 부울 |
| <String>.items | 생성되거나 업데이트된 CI를 설명하는 객체의 배열입니다. 데이터 유형: 배열 |
| <String>.items.additionalRelatedItems | 처리되었지만 입력 페이로드의 일부로 제공되지 않은 추가 조회 및 관련 항목에 대한 정보를 제공하는 JSON 객체 목록입니다. 이러한 항목은 부분 페이로드에서 가져온 것입니다. 데이터 유형: 배열 |
| <String>.items.additionalRelatedItems.className | 작성되거나 업데이트된 CI의 클래스/테이블 이름(sys_class_name)입니다. 데이터 유형: 문자열 |
| <String>.items.additionalRelatedItems.inputIndices | 이 관련 항목에 해당하는 요청 본문 items 배열의 CI에 대한 인덱스 값입니다. 데이터 유형: 숫자 배열 |
| <String>.items.additionalRelatedItems.mergedPayloadIds | 관련 항목에 병합된 부분 페이로드의 sys_ids 목록입니다. CMDB IRE 부분 페이로드 [cmdb_ire_partial_payloads] 테이블에 있습니다. 데이터 유형: 배열 |
| <String>.items.additionalRelatedItems.operation | 작업 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.items.additionalRelatedItems.sysId | 업데이트되거나 생성된 CI의 Sys_id입니다. 데이터 유형: 문자열 |
| <String>.items.className | 작성되거나 업데이트된 CI의 클래스/테이블 이름(sys_class_name)입니다. 데이터 유형: 문자열 |
| <String>.items.duplicateIndices | 현재 항목과 중복되는 CI의 인덱스 목록입니다. 데이터 유형: 배열 |
| <String>.items.errorCount | 항목을 처리하는 동안 발생한 오류 수입니다. 데이터 유형: 숫자 |
| <String>.items.errors | 각 객체가 이 CI를 처리하는 동안 발생한 오류를 설명하는 객체의 배열입니다. 데이터 유형: 배열 |
| <문자열>.items.errors.error | CI를 처리하는 동안 발생한 오류의 유형입니다. 데이터 유형: 문자열 |
| <String>.items.errors.message | 오류와 관련된 오류 메시지입니다. 데이터 유형: 문자열 |
| <String>.items.identificationAttempts | CI를 식별하기 위해 시도한 목록입니다. 데이터 유형: 배열 |
| <String>.items.identificationAttempts.attemptResult | CI를 식별하려는 시도의 결과입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.items.identificationAttempts.attributes | 식별 프로세스 중에 사용된 CI 식별자 항목 속성 목록입니다. 데이터 유형: 배열 속성 이름과 유형은 요청 본문 데이터와 사용 중인 식별자(예: )에 따라 달라집니다. |
| <String>items.identificationAttempts.hybridEntryCiAttributes | 식별 프로세스 중에 사용된 CI 식별자 항목 속성 목록입니다. 데이터 유형: 배열 속성 이름과 유형은 요청 본문 데이터와 사용 중인 식별자(예: )에 따라 달라집니다. |
| <String>.items.identificationAttempts.identifierName | 이 CI 식별 시도에 사용되는 식별자 규칙입니다. 데이터 유형: 문자열 |
| <String>.items.identificationAttempts.searchOnTable | 식별 프로세스 중에 검색되는 테이블의 이름입니다. 데이터 유형: 문자열 |
| <String>.items.identifierEntrySysId | CI를 식별하는 데 사용되는 식별자 규칙에 대한 Sys_id입니다. 식별자 항목 [cmdb_identifier_entry] 테이블에 있습니다. 데이터 유형: 문자열 |
| <String>.items.incompleteSysIds | 항목에 오류가 있어 불완전한 페이로드로 저장된 경우 이 매개변수에는 CMDB IRE 불완전한 페이로드 [cmdb_ire_incomplete_payloads] 테이블의 기록 sys_id 포함됩니다. 데이터 유형: 문자열 |
| <문자열>.items.info | 항목 처리에 대한 추가 정보가 들어 있는 객체의 목록입니다. 데이터 유형: 배열 |
| <문자열>.items.info.code | 건너뛴 재분류 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.items.info.message | 재분류를 건너뛰는 이유에 대한 추가 통찰력을 제공하는 메시지입니다. 데이터 유형: 문자열 |
| <String>.items.info.ruleSysId | 일치하는 재분류 제한 규칙의 Sys_id입니다. 재분류 제한 규칙으로 인해 IRE가 재분류를 건너뛸 때만 적용할 수 있습니다. 페이로드 또는 전역 플래그로 인해 재분류를 건너뛸 경우 이 값은 비어 있습니다. 데이터 유형: 문자열 |
| <String>.items.inputIndices | 해당 입력 CI의 인덱스입니다. 최상위 항목의 경우 정수 목록입니다. 관련 또는 조회 CI의 경우 JSON 객체의 목록입니다. 데이터 유형: 숫자 배열 |
| <String>.items.maskedAttributes | 조정 규칙에 정의된 대로 신뢰할 수 없는 데이터 소스에 의한 업데이트를 건너뛴 속성 목록입니다. 데이터 유형: 배열 |
| <String>.items.operation | 발생한 작업입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.items.partialSysIds | 항목에 오류가 있어 부분 페이로드로 저장된 경우 이 매개변수에는 부분 페이로드 기록의 sys_id 포함됩니다. 데이터 유형: 문자열 |
| <String>.items.relatedItems | 요청 본문 items.lookup 배열에서 관련 CI(테이블 조회 CI)를 설명하는 JSON 객체의 목록입니다. 데이터 유형: 배열 |
| <String>.items.relatedItems.className | 관련 항목의 클래스/테이블 이름(sys_class_name)입니다. 데이터 유형: 문자열 |
| <String>.items.relatedItems.errors | 관련 항목을 처리하는 동안 발생한 오류의 목록입니다. 데이터 유형: 배열 |
| <문자열>.items.relatedItems.errors.error | 관련 항목을 처리하는 동안 발생한 오류의 유형입니다. 데이터 유형: 문자열 |
| <String>.items.relatedItems.errors.message | 오류와 관련된 오류 메시지입니다. 데이터 유형: 문자열 |
| <String>.items.relatedItems.errorCount | 관련 항목을 처리하는 동안 탐지된 오류 수입니다. 데이터 유형: 숫자 |
| <String>.items.relatedItems.incompleteSysIds | 관계에 오류가 있어 불완전한 페이로드로 저장된 경우 이 값은 CMDB IRE 불완전한 페이로드 [cmdb_ire_incomplete_payloads] 테이블에 있는 기록의 sys_id입니다. 데이터 유형: 문자열 |
| <String>.items.relatedItems.inputIndices | 해당 입력 항목의 인덱스입니다. 최상위 항목의 경우 정수 목록입니다. 관련 항목 또는 조회 항목의 경우 JSON 객체의 목록입니다. 데이터 유형: 숫자 배열 또는 객체 배열 |
| <String>.items.relatedItems.inputIndices.mainIndex | 관련 항목의 CI 상위에 해당하는 요청 본문 items 배열의 인덱스 값입니다. 데이터 유형: 숫자 |
| <문자열>.items.relatedItems.inputIndices.subIndex | 관련 항목에 해당하는 요청 본문 items.lookup 배열의 인덱스 값입니다. 데이터 유형: 숫자 |
| <String>.items.relatedItems.mergedPayloadIds | 처리 중에 CI에 병합된 부분 페이로드의 sys_ids 목록입니다. 데이터 유형: 배열 |
| <String>.items.relatedItems.operation | 발생한 작업입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.items.relatedItems.partialSysIds | 관련 항목에 오류가 있어 부분 페이로드로 저장된 경우 CMDB IRE 부분 페이로드 [cmdb_ire_partial_payloads] 테이블에 연결된 기록의 sys_ids 목록이 포함됩니다. 데이터 유형: 배열 |
| <String>.items.relatedItems.sysId | 관련 항목의 sys_id입니다. 데이터 유형: 문자열 |
| <String>.items.relatedItems.warningCount | 관련 항목을 처리할 때 발생한 경고 수입니다. 데이터 유형: 숫자 |
| <String>.items.relatedItems.warnings | 관련 항목을 처리하는 동안 발생한 경고를 설명하는 객체의 배열입니다. 데이터 유형: 배열 |
| <String>.items.relatedItems.warnings.error | 관련 항목을 처리하는 동안 발생한 경고의 유형입니다. 데이터 유형: 문자열 |
| <String>.items.relatedItems.warnings.message | 경고와 관련된 메시지입니다. 데이터 유형: 문자열 |
| <String>.items.relatedSysIds | 관련 항목의 조회 기반 식별 중에 사용되는 CI의 sys_id 값 목록입니다. 데이터 유형: 문자열 |
| <문자열>.items.sys_id | 업데이트되거나 생성된 CI의 Sys_id입니다. 데이터 유형: 문자열 |
| <문자열>.관계 | 요청 본문 relations 배열의 종속 관계 CI를 설명하는 JSON 객체의 목록입니다. 데이터 유형: 배열 |
| <String>.relations.className | 이 종속 관계 CI의 Sys_class_name입니다. 지원되는 값만: cmdb_rel_ci: CI 관계 테이블. 데이터 유형: 문자열 |
| <String>.relations.errorCount | 종속 관계 CI를 처리할 때 발생한 오류 수입니다. 데이터 유형: 숫자 |
| <문자열>.relations.errors | 이 종속 관계 CI를 처리하는 동안 발생한 오류를 설명하는 객체의 배열입니다. 데이터 유형: 배열 |
| <문자열>.relations.errors.error | 종속 관계 CI를 처리하는 동안 발생한 오류의 유형입니다. 데이터 유형: 문자열 |
| <String>.relations.errors.message | 이 종속 관계 CI를 처리하는 동안 발생한 오류 메시지입니다. 데이터 유형: 문자열 |
| <String>.relations.incompleteSysIds | 관계에 오류가 있어 불완전한 페이로드로 저장된 경우 이 값은 CMDB IRE 불완전한 페이로드 [cmdb_ire_incomplete_payloads] 테이블에 있는 기록의 sys_id입니다. 데이터 유형: 문자열 |
| <String>.relations.inputIndices | 이 종속 관계 CI에 해당하는 요청 본문 relations 배열의 종속 관계 CI 객체에 대한 인덱스입니다. 데이터 유형: 배열 |
| <String>.relations.operation | 수행된 작업의 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| <String>.relations.partialSysIds | 관계에 오류가 있어 부분 페이로드로 저장된 경우 이 값은 CMDB IRE 부분 페이로드 [cmdb_ire_partial_payloads] 테이블에 있는 기록의 sys_id입니다. 데이터 유형: 문자열 |
| <String>.relations.sysId | 종속 관계 CI의 Sys_id입니다. 데이터 유형: 문자열 |
| <문자열>.요약 | 클래스당 삽입, 업데이트된 항목 수 등에 대한 통계를 제공하는 JSON 속성 목록입니다. 데이터 유형: 배열 |
| <String>.summary.<class_name> | 특정 클래스에 대한 통계입니다. 데이터 유형: 객체 |
| <String>.summary.<class_name>.additionalInsertedItemCount | 부분 페이로드 처리로 인해 삽입된 항목 수입니다. 데이터 유형: 숫자 |
| <String>.summary.<class_name>.errorCount | 항목을 처리할 때 발생하는 오류 수입니다. 데이터 유형: 숫자 |
| <String>.summary.<class_name>.incompleteItemCount | CMDB IRE 불완전한 페이로드 [cmdb_ire_incomplete_payloads] 테이블에 삽입된 항목 수입니다. 데이터 유형: 숫자 |
| <String>.summary.<class_name>.insertedItemCount | 생성된 항목 수입니다. 데이터 유형: 숫자 |
| <String>.summary.<class_name>.partialItemCount | 부분 페이로드 테이블 [cmdb_ire_partial_payloads]에 저장된 항목 수입니다. 데이터 유형: 숫자 |
| <String>.summary.<class_name>.skippedItemCount | 건너뛴 항목 수입니다. 데이터 유형: 숫자 |
| <String>.summary.<class_name>.unchangedItemCount | 항목이 있지만 수정되지 않은 항목 수입니다. 데이터 유형: 숫자 |
| <String>.summary.<class_name>.updatedItemCount | 업데이트된 항목 수입니다. 데이터 유형: 숫자 |
| <String>.summary.<class_name>.warningCount | 처리 시 경고를 생성한 항목 수입니다. 데이터 유형: 숫자 |
이 코드 예제에서는 페이로드를 처리하도록 cmdbUtil.identifyAndReconcileEnhanced() 메서드를 호출하기 전에 페이로드를 업데이트한 다음 새 페이로드를 설정할 수 있는 ImportSet의 페이로드를 가져오는 방법을 보여 줍니다.
// Add this code to the onBefore transform map script
// Ability to modify the payload using get and set APIs
// Call cmdbUtil API to do Identification and Reconciliation of current row
var cmdbUtil = new CMDBTransformUtil();
cmdbUtil.setDataSource('ImportSet');
var payload = cmdbUtil.getPayload(source, map, log);
// Modify the payload here
cmdbUtil.setPayload(payload);
cmdbUtil.identifyAndReconcileEnhanced(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());
}
CMDBTransformUtil - hasError()
이전 identifyAndReconcile() 또는 identifyAndReconcileEnhanced() 메서드 호출에서 오류가 발생했는지 여부를 확인합니다.
onBefore 변환 맵 스크립트에서 이 메서드를 사용합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 부울 | 이전에 호출한 identifyAndReconcile() 또는 identifyAndReconcileEnhanced() 메서드에서 오류가 발생했는지 여부를 나타내는 플래그입니다. 가능한 값:
|
// Add this code to the onBefore transform map script
// Call CMDB API to do Identification and Reconciliation of current row
var cmdbUtil = new CMDBTransformUtil();
cmdbUtil.setDataSource('ImportSet');
cmdbUtil.identifyAndReconcileEnhanced(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());
}
범위가 지정된 등가
이 메서드에 해당하는 범위가 지정되지 않았습니다.
CMDBTransformUtil - identifyAndReconcile(객체 소스, 객체 맵, 객체 로그)
에 CI(구성 항목) 구성 관리 데이터베이스(CMDB)를 삽입하거나 업데이트합니다.
onBefore 변환 맵 스크립트에서 이 메서드를 사용합니다. 구성 항목 기록을 삽입하거나 업데이트할 때 변환에 의존하는 대신 이 방법을 사용하면 CMDB의 중복 항목이 줄어듭니다. 자세한 내용은 임포트 세트에 CI 식별 및 조정 적용을 참조하십시오.
변환에서 기록을 두 번 추가 또는 업데이트하지 못하게 하려면 ignore = true를 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| source | 객체 | 수신 기록을 보유하는 변환 맵 스크립트에서 사용할 수 있는 전역 객체입니다. |
| 맵 | 객체 | 현재 변환 맵 기록을 보유하는 변환 맵 스크립트에서 사용할 수 있는 맵 객체입니다. |
| log | 객체 | 변환 맵 스크립트에서 사용할 수 있는 로그 객체입니다. |
| 유형 | 설명 |
|---|---|
| void |
이 코드 예제는 identifyAndReconcile() 메서드를 호출하여 입력 페이로드의 현재 행을 처리하는 방법을 보여줍니다.
// Add this code to the onBefore transform map script
// Call CMDBTransformUtil API to do Identification and Reconciliation of the current row
var cmdbUtil = new CMDBTransformUtil();
cmdbUtil.identifyAndReconcile(source, map, log);
ignore = true;
CMDBTransformUtil - identifyAndReconcileEnhanced(객체 소스, 객체 맵, 객체 로그)
에 CI(구성 항목) 구성 관리 데이터베이스(CMDB)를 삽입하거나 업데이트합니다.
이 메서드는 CMDBTransformUtil.identifyAndReconcile() 메서드의 기능을 제공할 뿐만 아니라 다음을 지원합니다.
- 부분 페이로드 처리
- 부분 커밋 처리
- 페이로드 내에서 중복 항목 제거
- 출력 요약 작성 중
식별 및 조정에 대한 자세한 내용과 이 메서드에서 사용하는 데이터에 대한 자세한 설명은 IRE(식별 및 조정)를 참조하세요.
| 이름 | 유형 | 설명 |
|---|---|---|
| source | 객체 | 수신 기록을 보유하는 변환 맵 스크립트에서 사용할 수 있는 전역 객체입니다. |
| 맵 | 객체 | 현재 변환 맵 기록을 보유하는 변환 맵 스크립트에서 사용할 수 있는 맵 객체입니다. |
| log | 객체 | 변환 맵 스크립트에서 사용할 수 있는 로그 객체입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 코드 예제는 identifyAndReconcileEnhanced() 메서드를 호출하여 전달된 페이로드를 처리하는 방법을 보여줍니다.
// Add this code to the onBefore transform map script
// Call CMDBTransformUtil API to do Identification and Reconciliation
var cmdbUtil = new CMDBTransformUtil();
cmdbUtil.identifyAndReconcileEnhanced(source, map, log);
ignore = true;
CMDBTransformUtil - logTransformStats(log 객체)
삽입, 업데이트, 건너뛴 또는 오류가 발생한 구성 항목(CI) 수를 기록합니다.
onComplete 변환 맵 스크립트에서 이 메서드를 사용합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| log | 객체 | 변환 맵 스크립트에서 사용할 수 있는 로그 객체입니다. |
| 유형 | 설명 |
|---|---|
| void |
var cmdbUtil = new CMDBTransformUtil();
cmdbUtil.logTransformStats(log);
범위가 지정된 등가
이 메서드에 해당하는 범위가 지정되지 않았습니다.
CMDBTransformUtil - setDataSource(문자열 소스)
identifyAndReconcile() 또는 identifyAndReconcileEnhanced() 메서드가 호출될 때 사용할 데이터 소스를 설정합니다.
onBefore 변환 맵 스크립트에서 이 메서드를 사용합니다. 이 메서드를 호출하지 않으면 기본값은 ImportSet입니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| source | 문자열 | 소스 구성 항목 기록의 데이터 소스입니다. |
| 유형 | 설명 |
|---|---|
| void |
// Add this code to the onBefore transform map script
// Call CMDB API to do Identification and Reconciliation of current row
var cmdbUtil = new CMDBTransformUtil();
cmdbUtil.setDataSource('ImportSet');
cmdbUtil.identifyAndReconcileEnhanced(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());
}
범위가 지정된 등가
이 메서드에 해당하는 범위가 지정되지 않았습니다.