IdentificationEngineScriptableApi - グローバル
IdentificationEngineScriptableApi は、識別および調整フレームワークを使用して、構成管理データベース (CMDB) の更新時に許可されたデータソースからの情報のみを受け入れることで、重複する構成アイテム (CI) の作成を最小限に抑え、CI 属性を調整します。
IdentificationEngineScriptableApi - createOrUpdateCI(文字列 source, 文字列 input)
識別および調整ルールに基づいて、CMDB で構成アイテム (CI) および 構成管理データベース (CMDB) 以外の CI (cmdb_ci から拡張されていないクラス) を挿入または更新します。CMDB を直接更新する代わりに、この API を使用します。
非 CMDB の CI は、IRE ペイロードのルックアップまたは関連アイテムとして渡す必要があります。 非 CMDB テーブルの取り込みの詳細については、次を参照してください IRE support for non-CMDB tables。
| 名前 | タイプ | 説明 |
|---|---|---|
| 入力 | 文字列 | 必須です。入力ペイロード。追加または更新する構成アイテムの JSON 形式の文字列。 |
| input.items | アレイ | 追加または更新するアイテムを定義するオブジェクトのアレイ。 |
| input.items.className | 文字列 | 必須です。作成または更新する構成アイテム (CI) のクラス/テーブル名 sys_class_name。 この値は、cmdb_ci_linux_server や cmdb_ci_win_server などの任意の CMDB クラス/テーブルにすることができます。 |
| input.items.display_values | オブジェクト | この関連アイテム用に名前と値のペアとして作成または更新する参照フィールド。名前はフィールド名で、値は参照される表示値です。参照フィールドの表示値の代わりに sys_id を使用する場合は、このパラメーターではなく input.items.lookup.values パラメーターで情報を渡します。 参照フィールド名は、次のようにユーザーが選択したフィールドによって異なります。 |
| input.items.internal_id | 文字列 | 関連付けられたペイロードの一意のアイテム識別子。 これは任意の値にすることができますが、ペイロード内で一意である必要があります。 |
| input.items.lookup | アレイ | ルックアップを含むトップレベルのアイテムを識別します (ルックアップベースの識別)。これらのレコードは、cmdb_ci への参照を含むルックアップテーブルに基づいて構成アイテムを識別するために使用されます。 例: |
| input.items.lookup.className | 文字列 | 必須です。作成または更新する構成アイテム (CI) のクラス/テーブル名 sys_class_name。 この値は、cmdb_serial_number や cmdb_ci_network_adapter などの任意の CMDB クラス/テーブルにすることができます。 |
| input.items.lookup.internal_id | 文字列 | 関連付けられたペイロードの一意のアイテム識別子。 これは任意の値にすることができますが、ペイロード内で一意である必要があります。 |
| input.items.lookup.sys_object_source_info | オブジェクト | 特定のソースの一意の CI ID。 |
| input.items.lookup.sys_object_source_info.source_feed | 文字列 | ソースに複数のフィードを含めることができる場合は、このフィールドを使用して、このアイテムを送信するフィードの名前を指定します。 データソースはこのフィード名を生成します。ソース フィードを一意に識別する任意の文字列を指定できます。 |
| input.items.lookup.sys_object_source_info.source_name | 文字列 | CI 情報のデータソース。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| input.items.lookup.sys_object_source_info.source_native_key | 文字列 | ソースからのアイテムの一意のキー/ID。 データソースはこのキーを生成します。アイテムに固有の任意の文字列にすることができます。 |
| input.items.lookup.sys_object_source_info.source_recency_timestamp | 文字列 | アイテムがスキャンされた UTC 日時。 形式:YYYY-MM-DD hh:mm:ss |
| input.items.lookup.values | オブジェクト | この関連アイテム用に名前/値のペアとして作成または更新するフィールド。名前はフィールド名です。参照フィールドの場合、値は参照される sys_id である必要があります。参照フィールドの sys_id の代わりに表示値を使用する場合は、values オブジェクトではなく display_values オブジェクトでこの情報を渡します。 フィールド名とタイプは、次のようにユーザーが選択したフィールドによって異なります。 |
| input.items.related | アレイ | 関連リストを含むトップレベルのアイテムへの参照。関連エントリ [cmdb_related_entry] のルールは、このアレイに含めることができるレコードのタイプを定義します。これらのレコードは、識別されている CI への参照を含む関連テーブルに基づいてアイテムを追加するために使用されます。 関連テーブルは、cmdb_ci を拡張する場合と拡張しない場合があります。これらのレコードは、構成アイテムの識別には使用されません。 |
| input.items.related.className | 文字列 | 必須です。作成または更新する構成アイテム (CI) のクラス/テーブル名 sys_class_name。 この値は、cmdb_software_instance や cmdb_key_value などの任意の CMDB クラス/テーブルにすることができます。 |
| input.items.related.internal_id | 文字列 | 関連付けられたペイロードの一意のアイテム識別子。 これは任意の値にすることができますが、ペイロード内で一意である必要があります。 |
| input.items.related.sys_object_source_info | オブジェクト | 特定のソースの一意の CI ID。 |
| input.items.related.sys_object_source_info.source_feed | 文字列 | ソースに複数のフィードを含めることができる場合は、このフィールドを使用して、このアイテムを送信するフィードの名前を指定します。 データソースはこのフィード名を生成します。ソース フィードを一意に識別する任意の文字列を指定できます。 |
| input.items.related.sys_object_source_info.source_name | 文字列 | CI 情報のデータソース。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| input.items.related.sys_object_source_info.source_native_key | 文字列 | ソースからのアイテムの一意のキー/ID。 データソースはこのキーを生成します。アイテムに固有の任意の文字列にすることができます。 |
| input.items.related.sys_object_source_info.source_recency_timestamp | 文字列 | アイテムがスキャンされた UTC 日時。 形式:YYYY-MM-DD hh:mm:ss |
| input.items.related.values | オブジェクト | この関連アイテム用に名前/値のペアとして作成または更新するフィールド。名前はフィールド名です。参照フィールドの場合、値は参照される sys_id である必要があります。参照フィールドの sys_id の代わりに表示値を使用する場合は、values オブジェクトではなく display_values オブジェクトでこの情報を渡します。 フィールド名とタイプは、次のようにユーザーが選択したフィールドによって異なります。 |
| input.items.settings | オブジェクト | 許可される更新のタイプを定義するパラメーター。 |
| input.items.settings.skipReclassificationRestrictionRules | ブール | IRE がペイロードアイテムのクラスに一致する再分類制限ルールを実行すべきかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.settings.updateWithoutDowngrade | ブーリアン | このアイテムの更新とダウングレードの両方が許可されているかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.settings.updateWithoutUpgrade | ブーリアン | このアイテムの更新とアップグレードの両方が許可されているかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.settings.updateWithoutSwitch | ブーリアン | アイテムを更新してクラスを切り替えることができるかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.sys_object_source_info | オブジェクト | 特定のソースの一意の CI ID。 |
| input.items.sys_object_source_info.source_feed | 文字列 | ソースに複数のフィードを含めることができる場合は、このフィールドを使用して、このアイテムを送信するフィードの名前を指定します。 データソースはこのフィード名を生成します。ソース フィードを一意に識別する任意の文字列を指定できます。 |
| input.items.sys_object_source_info.source_name | 文字列 | CI 情報のデータソース。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| input.items.sys_object_source_info.source_native_key | 文字列 | ソースからのアイテムの一意のキー/ID。 データソースはこのキーを生成します。アイテムに固有の任意の文字列にすることができます。 |
| input.items.sys_object_source_info.source_recency_timestamp | 文字列 | アイテムがスキャンされた UTC 日時。 形式:YYYY-MM-DD hh:mm:ss |
| input.items.values | オブジェクト | この関連アイテム用に名前/値のペアとして作成または更新するフィールド。名前はフィールド名です。参照フィールドの場合、値は参照される sys_id である必要があります。参照フィールドの sys_id の代わりに表示値を使用する場合は、values オブジェクトではなく display_values オブジェクトでこの情報を渡します。 フィールド名とタイプは、次のようにユーザーが選択したフィールドによって異なります。 |
| input.referenceItems | アレイ | 入力ペイロード内のアイテム間の参照を定義するオブジェクトのアレイ。 |
| input.referenceItems.referenced | 文字列 | 別のアイテムによって参照されているアイテムに対して定義された internal_id。 |
| input.referenceItems.referencedBy | 文字列 | 別のアイテムを参照するアイテムに対して定義された internal_id。 |
| input.referenceItems.referenceField | 文字列 | referencedBy アイテムのクラス/テーブル内の参照フィールドの名前。 |
| input.relations | アレイ | 入力ペイロード内のアイテム間の関係を指定するオブジェクトのアレイ。 このアレイ内のオブジェクトは、2 つの形式のいずれかを使用できます。
|
| input.relations.child | 番号 | 関係の子 (items、items.related、または items.lookup) を表す items アレイ内の CI オブジェクトの整数インデックス。 |
| input.relations.child_id | 文字列 | 関係内の子アイテム (items、items.related、または items.lookup) の internal_id。 |
| input.relations.parent | 番号 | items アレイ内の親アイテム (items、items.related、または items.lookup) の整数インデックス。 |
| input.relations.parent_id | 文字列 | 関係内の親アイテム (items、items.related、または items.lookup) の internal_id。 |
| input.relations.sys_rel_source_info | オブジェクト | 関係の検出ソース情報。非依存関係の場合、この情報は関係ソース [sys_rel_source] テーブルに保存されます (identifyCIEnhanced() または identifyCI() メソッドでは保持されません)。 データタイプ:オブジェクト |
| input.relations.sys_rel_source_info.source_name | 文字列 | 検出ソース名。 デフォルト:API メソッドパラメーターで渡される検出ソース。 |
| input.relations.sys_rel_source_info.source_feed | 文字列 | 検出ソース内のサブ検出/スキャンである文字列。 デフォルト:「UNKNOWN」は、sys_rel_sourceテーブルにレコードを作成するときにsource_feed列に格納されます。 |
| input.relations.type | 文字列 | 親アイテムと子アイテムの間に存在する関係のタイプ。これは、CI 関係タイプ [cmdb_rel_type] テーブルからの名前フィールド値である必要があります。 |
| source | 文字列 | CI 情報のデータソースを識別します。この値は、cmdb_ci テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| タイプ | 説明 |
|---|---|
| <String> | 入力文字列内の構成アイテムの結果のリストである JSON 形式の文字列。それぞれの結果文字列の形式は「items: [{}], related:[{}]」で、アイテムと関係リスト内の各アイテムに名前と値のペアが含まれています。 データタイプ:文字列 |
| <String>.additionalCommittedItems | 現在、値は返されていません。 |
| <String>.additionalCommittedRelations | 現在、値は返されていません。 |
| <String>.items | 作成または更新された CI を説明するオブジェクトのリスト。 データタイプ:アレイ |
| <String>.items.additionalRelatedItems | 処理されたが入力ペイロードの一部として提供されていない追加のルックアップアイテムおよび関連アイテムに関する情報を提供する JSON オブジェクトのリスト。これらのアイテムは部分的ペイロードからのものです。 現在、この情報は返されていません。 データタイプ:アレイ |
| <String>.items.additionalRelatedItems.className | 作成または更新された CI のクラス/テーブル名 (sys_class_name)。 データタイプ:文字列 |
| <String>.items.additionalRelatedItems.inputIndices | 対応する入力アイテムのインデックス。最上位レベルのアイテムの場合は、整数のリストです。関連アイテムまたはルックアップアイテムの場合は、JSON オブジェクトのリストです。 データタイプ:数値のアレイまたはオブジェクトのアレイ |
| <String>.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 の処理中に発生したエラーを説明するオブジェクトのアレイ。 データタイプ:アレイ |
| <String>.items.errors.error | CI の処理中に発生したエラーのタイプ。 データタイプ:文字列 |
| <String>.items.errors.message | エラーに関連するエラーメッセージ。 データタイプ:文字列 |
| <String>.items.identificationAttempts | CI を識別するために実行された試行のリスト。 データタイプ:アレイ |
| <String>.items.identificationAttempts.attemptResult | CI の識別の試行の結果。 可能な値:
データタイプ:文字列 |
| <String>.items.identificationAttempts.attributes | 識別プロセス中に使用された CI ID エントリ属性のリスト。 データタイプ:アレイ 属性の名前とタイプは、次のような使用される要求本文データと識別子によって異なります。 |
| <String>.items.identificationAttempts.hybridEntryCiAttributes | 現在、値は返されていません。 |
| <String>.items.identificationAttempts.identifierName | この CI の識別試行に使用される識別子ルール。 データタイプ:文字列 |
| <String>.items.identificationAttempts.searchOnTable | 識別プロセス中に検索されたテーブルの名前。 データタイプ:文字列 |
| <String>.items.identifierEntrySysId | CI を識別するために使用される識別子ルールの sys_id。識別子エントリー [cmdb_identifier_entry] テーブルにあります。 データタイプ:文字列 |
| <String>.items.info | アイテムの処理に関する追加情報を含むオブジェクトのリスト。 データタイプ:アレイ |
| <String>.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 アレイからの整数値。 データタイプ:数値 |
| <String>.items.relatedItems.inputIndices.subIndex | 関連アイテムに対応する要求本文 items.lookup アレイからの整数値。 データタイプ:数値 |
| <String>.items.relatedItems.operation | 操作のタイプ 可能な値:
データタイプ:文字列 |
| <String>.items.relatedSysIds | 要求本文 items.lookup アレイからの関連アイテム (テーブルルックアップアイテム) の sys_id 値のリスト。 注目すべき値 - null:この関連アイテムのsys_idが識別されませんでした。 データタイプ:アレイ |
| <String>.items.sys_id | 更新または作成された CI の sys_id。 データタイプ:文字列 |
| <String>.relations | 処理された関係に関する情報を提供する 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。 データタイプ:文字列 |
構成アイテムを再分類する方法を次に示します。
var payload = {
"items": [
{
"className": "cmdb_ci_win_server",
"values": {
"short_description": "Linux server description",
"name": "Linux Server 1"
}
}
]
};
var input = new JSON().encode(payload);
var output = SNC.IdentificationEngineScriptableApi.createOrUpdateCI('ServiceNow', input);
gs.print(output);
出力:
{
"items": [
{
"className": "cmdb_ci_linux_server",
"operation": "NO_CHANGE",
"sysId": "440577800f321010150efc91ff767e94",
"identifierEntrySysId": "556eb250c3400200d8d4bea192d3ae92",
"identificationAttempts": [
{
"attributes": [],
"info": "sys_object_source SKIPPED",
"identifierName": "",
"attemptResult": "SKIPPED",
"hybridEntryCiAttributes": []
},
{
"attributes": [
"serial_number",
"serial_number_type"
],
"identifierName": "Hardware Rule",
"attemptResult": "SKIPPED",
"searchOnTable": "cmdb_serial_number",
"hybridEntryCiAttributes": []
},
{
"attributes": [
"serial_number"
],
"identifierName": "Hardware Rule",
"attemptResult": "SKIPPED",
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": []
},
{
"attributes": [
"name"
],
"identifierName": "Hardware Rule",
"attemptResult": "MATCHED",
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": []
}
],
"info": [
{
"message": "CI Reclassification not allowed from class: [cmdb_ci_linux_server] to [cmdb_ci_win_server] by a reclassification restriction rule",
"code": "SKIPPED_CLASS_SWITCH",
"ruleSysId": "b3d4b3800f321010150efc91ff767eab"
}
],
"errorCount": 0,
"warningCount": 0,
"markers": [],
"inputIndices": [
0
],
"mergedPayloadIds": []
}
],
"additionalCommittedItems": [],
"relations": [],
"additionalCommittedRelations": []
}
var payload = {
"items": [
{
"className": "cmdb_ci_win_server",
"values": {
"chassis_type": "Desktop",
"os": "Windows 2012 R2 Datacenter",
"name": "Windows2012Server1",
"serial_number": "0000-0011-1690-8730-8636-5722-52",
"cpu_count": "1"
},
"lookup": [
{
"values": {
"valid": "true",
"serial_number": "0000-0011-1690-8730-8636-5722-52",
"serial_number_type": "bios"
},
"className": "cmdb_serial_number"
},
{
"values": {
"valid": "true",
"serial_number": "3311-9736-4988-9744-1749-4183-41",
"serial_number_type": "chassis"
},
"className": "cmdb_serial_number"
}],
"internal_id": "16777219",
"sys_object_source_info": {
"source_feed": "SN Discovery Feed 1",
"source_name": "ServiceNow",
"source_native_key": "16777219",
"source_recency_timestamp": "2019-10-18 08:31:23"
}},
{
"className": "cmdb_ci_spkg",
"values": {
"name": "Windows 2012 R2 Datacenter",
"key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL"
},
"related": [
{
"internal_id": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219",
"values": {
"name": "Windows 2012 R2 Datacenter-SAMLABVM52"
},
"className": "cmdb_software_instance",
"sys_object_source_info": {
"source_feed": "SN Discovery Feed 1",
"source_name": "ServiceNow",
"source_native_key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
}}]},
{
"className": "cmdb_ci_app_server_tomcat",
"values": {
"running_process_key_parameters": "/opt/OV/nonOV/tomcat/b/temp org.apache.catalina.startup.Bootstrap start",
"install_directory": "/opt/OV/nonOV/tomcat/b",
"name": "Tomcat@hpom9:3443",
"server_port": "8006",
"sys_class_name": "cmdb_ci_app_server_tomcat"
},
"internal_id": "tomcat_id"
}],
"relations": [
{
"parent_id": "tomcat_id",
"child_id": "16777219",
"type": "Runs on::Runs"
}],
"referenceItems": [
{
"referenceField": "installed_on",
"referenced": "16777219",
"referencedBy": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
}]};
var jsonUntil = new JSON();
var input = jsonUntil.encode(payload);
var output = SNC.IdentificationEngineScriptableApi.createOrUpdateCI('ServiceNow', input);
gs.print(output);
出力:
{
"items": [
{
"className": "cmdb_ci_win_server",
"operation": "INSERT",
"sysId": "d56ab6eadbd510102f67dfea5e96194e",
"relatedSysIds": [
"dd6af62adb1910102f67dfea5e96197f",
"996af62adb1910102f67dfea5e961980"
],
"relatedItems": [
{
"errors": [],
"operation": "INSERT",
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"sysId": "dd6af62adb1910102f67dfea5e96197f",
"markers": [],
"inputIndices": [
{
"mainIndex": 0,
"subIndex": 0
}
],
"className": "cmdb_serial_number"
},
{
"errors": [],
"operation": "INSERT",
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"sysId": "996af62adb1910102f67dfea5e961980",
"markers": [],
"inputIndices": [
{
"mainIndex": 0,
"subIndex": 1
}
],
"className": "cmdb_serial_number"
}
],
"identifierEntrySysId": "Unknown",
"identificationAttempts": [
{
"info": "sys_object_source NO_MATCH",
"identifierName": "",
"attemptResult": "NO_MATCH",
"attributes": [],
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "NO_MATCH",
"attributes": [
"serial_number",
"serial_number_type"
],
"searchOnTable": "cmdb_serial_number",
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "NO_MATCH",
"attributes": [
"serial_number"
],
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "NO_MATCH",
"attributes": [
"name"
],
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "SKIPPED",
"attributes": [
"mac_address",
"name"
],
"searchOnTable": "cmdb_ci_network_adapter",
"hybridEntryCiAttributes": []
}
],
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"markers": [],
"inputIndices": [
0
]
},
{
"className": "cmdb_ci_spkg",
"operation": "INSERT",
"sysId": "116af62adb1910102f67dfea5e961981",
"relatedSysIds": [
"6d6af62adb1910102f67dfea5e961984"
],
"relatedItems": [
{
"errors": [],
"operation": "INSERT",
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"sysId": "6d6af62adb1910102f67dfea5e961984",
"markers": [],
"inputIndices": [
{
"mainIndex": 1,
"subIndex": 0
}
],
"className": "cmdb_software_instance"
}
],
"identifierEntrySysId": "Unknown",
"identificationAttempts": [
{
"info": "sys_object_source SKIPPED",
"identifierName": "",
"attemptResult": "SKIPPED",
"attributes": [],
"hybridEntryCiAttributes": []
},
{
"identifierName": "Software",
"attemptResult": "NO_MATCH",
"attributes": [
"key"
],
"searchOnTable": "cmdb_ci_spkg",
"hybridEntryCiAttributes": []
}
],
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"markers": [],
"inputIndices": [
1
]
},
{
"className": "cmdb_ci_app_server_tomcat",
"operation": "INSERT",
"sysId": "e96af62adb1910102f67dfea5e961985",
"identifierEntrySysId": "Unknown",
"identificationAttempts": [
{
"info": "sys_object_source SKIPPED",
"identifierName": "",
"attemptResult": "SKIPPED",
"attributes": [],
"hybridEntryCiAttributes": []
}
],
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"markers": [],
"inputIndices": [
2
]
}
],
"additionalCommittedItems": [],
"relations": [
{
"className": "cmdb_rel_ci",
"operation": "INSERT",
"sysId": "e96af62adb1910102f67dfea5e961989",
"identifierEntrySysId": "Unknown",
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"markers": [],
"inputIndices": [
0
]
}
],
"additionalCommittedRelations": []
}
依存型 CI を識別します。
var payload =
{items: [
{className:'cmdb_ci_web_server',
values: {name:'apache linux den 200',
running_process_command: 'xyz',
running_process_key_parameters: 'abc',
tcp_port:'3452'}},
{className:'cmdb_ci_linux_server',
values: {name:'lnux100', ram:'2048'}}],
relations:[{parent: 0, child: 1, type: 'Runs on::Runs'}]
};
var jsonUntil = new JSON();
var input = jsonUntil.encode(payload);
var output = SNC.IdentificationEngineScriptableApi.createOrUpdateCI('ServiceWatch', input);
gs.print(output);
出力:
{
"items": [
{
"className": "cmdb_ci_web_server",
"operation": "INSERT",
"sysId": "b9bb766adb1910102f67dfea5e961962",
"identifierEntrySysId": "Unknown",
"identificationAttempts": [
{
"info": "sys_object_source SKIPPED",
"identifierName": "",
"attemptResult": "SKIPPED",
"attributes": [],
"hybridEntryCiAttributes": []
},
{
"info": "sys_object_source SKIPPED",
"identifierName": "",
"attemptResult": "SKIPPED",
"attributes": [],
"hybridEntryCiAttributes": []
}
],
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"markers": [],
"inputIndices": [
0
]
},
{
"className": "cmdb_ci_linux_server",
"operation": "INSERT",
"sysId": "a5bb766adb1910102f67dfea5e96195b",
"identifierEntrySysId": "Unknown",
"identificationAttempts": [
{
"info": "sys_object_source SKIPPED",
"identifierName": "",
"attemptResult": "SKIPPED",
"attributes": [],
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "SKIPPED",
"attributes": [
"serial_number",
"serial_number_type"
],
"searchOnTable": "cmdb_serial_number",
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "SKIPPED",
"attributes": [
"serial_number"
],
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "NO_MATCH",
"attributes": [
"name"
],
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "SKIPPED",
"attributes": [
"mac_address",
"name"
],
"searchOnTable": "cmdb_ci_network_adapter",
"hybridEntryCiAttributes": []
}
],
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"markers": [],
"inputIndices": [
1
]
}
],
"additionalCommittedItems": [],
"relations": [
{
"className": "cmdb_rel_ci",
"operation": "INSERT",
"sysId": "fdbb766adb1910102f67dfea5e961964",
"identifierEntrySysId": "Unknown",
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"markers": [],
"inputIndices": [
0
]
}
],
"additionalCommittedRelations": []
}
ルックアップベースの識別で独立型 CI を識別します。
var payload = {items: [
{className:'cmdb_ci_netgear',
values: {name:'ny8500-nbxs08',
ports:'1200'},
lookup: [{className:'cmdb_serial_number',
values:{serial_number:'1234ABCD', serial_number_type:'uuid',absent:'false',valid:'true'}},
{className:'cmdb_serial_number',
values:{serial_number:'3456EFGH', serial_number_type:'system',absent:'false',valid:'true'}}]}]};
var jsonUntil = new JSON();
var input = jsonUntil.encode(payload);
var output = SNC.IdentificationEngineScriptableApi.createOrUpdateCI('ServiceNow', input);
gs.print(output);
出力:
{
"items": [
{
"className": "cmdb_ci_netgear",
"operation": "INSERT",
"sysId": "787c7e6adb1910102f67dfea5e96196e",
"relatedSysIds": [
"f47c7e6adb1910102f67dfea5e961977",
"3c7c7e6adb1910102f67dfea5e961977"
],
"relatedItems": [
{
"errors": [],
"operation": "INSERT",
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"sysId": "f47c7e6adb1910102f67dfea5e961977",
"markers": [],
"inputIndices": [
{
"mainIndex": 0,
"subIndex": 0
}
],
"className": "cmdb_serial_number"
},
{
"errors": [],
"operation": "INSERT",
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"sysId": "3c7c7e6adb1910102f67dfea5e961977",
"markers": [],
"inputIndices": [
{
"mainIndex": 0,
"subIndex": 1
}
],
"className": "cmdb_serial_number"
}
],
"identifierEntrySysId": "Unknown",
"identificationAttempts": [
{
"info": "sys_object_source SKIPPED",
"identifierName": "",
"attemptResult": "SKIPPED",
"attributes": [],
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "NO_MATCH",
"attributes": [
"serial_number",
"serial_number_type"
],
"searchOnTable": "cmdb_serial_number",
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "SKIPPED",
"attributes": [
"serial_number"
],
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "NO_MATCH",
"attributes": [
"name"
],
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": []
},
{
"identifierName": "Hardware Rule",
"attemptResult": "SKIPPED",
"attributes": [
"mac_address",
"name"
],
"searchOnTable": "cmdb_ci_network_adapter",
"hybridEntryCiAttributes": []
}
],
"errorCount": 0,
"mergedPayloadIds": [],
"warningCount": 0,
"markers": [],
"inputIndices": [
0
]
}
],
"additionalCommittedItems": [],
"relations": [],
"additionalCommittedRelations": []
}
スコープ対応
スコープ対象のアプリケーションで createOrUpdateCI(文字列 source, 文字列 input) メソッドを使用するには、対応するスコープ指定の IdentificationEngine メソッド createOrUpdateCI(文字列 source, 文字列 input) を使用します。
IdentificationEngineScriptableApi - createOrUpdateCIEnhanced(文字列 source, 文字列 input, オブジェクト options)
識別および調整ルールに基づいて、CMDB で構成アイテム (CI) および 構成管理データベース (CMDB) 以外の CI (cmdb_ci から拡張されていないクラス) を挿入または更新します。CMDB を直接更新する代わりに、この API を使用します。
非 CMDB の CI は、IRE ペイロードのルックアップまたは関連アイテムとして渡す必要があります。 非 CMDB テーブルの取り込みの詳細については、次を参照してください IRE support for non-CMDB tables。
- 部分的ペイロードの処理
- 部分的コミットの処理
- ペイロード内の重複アイテムの削除
- 出力サマリーの生成
非 CMDB テーブルの取り込みの詳細については、次を参照してください IRE support for non-CMDB tables。
| 名前 | タイプ | 説明 |
|---|---|---|
| 入力 | 文字列 | 必須です。入力ペイロード。追加または更新する構成アイテムの JSON 形式の文字列。 |
| input.items | アレイ | 追加または更新するアイテムを定義するオブジェクトのアレイ。 |
| input.items.className | 文字列 | 必須です。作成または更新する構成アイテム (CI) のクラス/テーブル名 sys_class_name。 この値は、cmdb_ci_linux_server や cmdb_ci_win_server などの任意の CMDB クラス/テーブルにすることができます。 |
| input.items.display_values | オブジェクト | この関連アイテム用に名前と値のペアとして作成または更新する参照フィールド。名前はフィールド名で、値は参照される表示値です。参照フィールドの表示値の代わりに sys_id を使用する場合は、このパラメーターではなく input.items.lookup.values パラメーターで情報を渡します。 参照フィールド名は、次のようにユーザーが選択したフィールドによって異なります。 |
| input.items.internal_id | 文字列 | 関連付けられたペイロードの一意のアイテム識別子。 これは任意の値にすることができますが、ペイロード内で一意である必要があります。 |
| input.items.lookup | アレイ | ルックアップを含むトップレベルのアイテムを識別します (ルックアップベースの識別)。これらのレコードは、cmdb_ci への参照を含むルックアップテーブルに基づいて構成アイテムを識別するために使用されます。 例: |
| input.items.lookup.className | 文字列 | 必須です。作成または更新する構成アイテム (CI) のクラス/テーブル名 sys_class_name。 この値は、cmdb_serial_number や cmdb_ci_network_adapter などの任意の CMDB クラス/テーブルにすることができます。 |
| input.items.lookup.internal_id | 文字列 | 関連付けられたペイロードの一意のルックアップアイテム識別子。 これは任意の値にすることができますが、ペイロード内で一意である必要があります。 |
| input.items.lookup.sys_object_source_info | オブジェクト | 特定のデータソースの一意の CI ID を定義します。同じ CI でもソースが異なると、名前と値のペアが異なる場合があります。 |
| input.items.lookup.sys_object_source_info.source_feed | 文字列 | ソースに複数のフィードを含めることができる場合は、このフィールドを使用して、このアイテムを送信するフィードの名前を指定します。 データソースはこのフィード名を生成します。ソース フィードを一意に識別する任意の文字列を指定できます。 |
| input.items.lookup.sys_object_source_info.source_name | 文字列 | CI 情報のデータソース。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| input.items.lookup.sys_object_source_info.source_native_key | 文字列 | ソースからのアイテムの一意のキー ID。 データソースはこのキーを生成します。アイテムに固有の任意の文字列にすることができます。 |
| input.items.lookup.sys_object_source_info.source_recency_timestamp | 文字列 | アイテムがスキャンされた UTC 日時。 形式:YYYY-MM-DD hh:mm:ss |
| input.items.lookup.values | オブジェクト | 名前と値のペアとしての CI のフィールド情報。この場合の名前はフィールド名です。参照フィールドを更新する場合、値は参照される sys_id である必要があります。 フィールド名とタイプは、次のようにユーザーが選択したフィールドによって異なります。 |
| input.items.related | アレイ | 関連リストを含むトップレベルのアイテムへの参照。関連エントリ [cmdb_related_entry] のルールは、このアレイに含めることができるレコードのタイプを定義します。これらのレコードは、識別されている CI への参照を含む関連テーブルに基づいてアイテムを追加するために使用されます。 関連テーブルは、cmdb_ci を拡張する場合と拡張しない場合があります。これらのレコードは、構成アイテムの識別には使用されません。 |
| input.items.related.className | 文字列 | 必須です。作成または更新する構成アイテム (CI) のクラス/テーブル名 sys_class_name。 この値は、cmdb_software_instance や cmdb_key_value などの任意の CMDB クラス/テーブルにすることができます。 |
| input.items.related.internal_id | 文字列 | このペイロードのこの関連アイテムの一意の識別子。任意の値にすることができますが、ペイロード内で一意である必要があります。 |
| input.items.related.sys_object_source_info | オブジェクト | 指定されたデータソースの一意の CI ID を構成するオブジェクト。同じ CI でもソースが異なると、名前と値のペアが異なる場合があります。 |
| input.items.related.sys_object_source_info.source_feed | 文字列 | ソースに複数のフィードを含めることができる場合は、このフィールドを使用して、このアイテムを送信するフィードの名前を指定します。 データソースはこのフィード名を生成します。ソース フィードを一意に識別する任意の文字列を指定できます。 |
| input.items.related.sys_object_source_info.source_name | 文字列 | CI 情報のデータソースを識別します。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| input.items.related.sys_object_source_info.source_native_key | 文字列 | 関連アイテムのソースからの一意のキー/ID。 データソースはこのキーを生成します。アイテムに固有の任意の文字列にすることができます。 |
| input.items.related.sys_object_source_info.source_recency_timestamp | 文字列 | アイテムがスキャンされた UTC 日時。 形式: |
| input.items.related.values | オブジェクト | この関連アイテム用に名前/値のペアとして作成または更新するフィールド。名前はフィールド名です。参照フィールドの場合、値は参照される sys_id である必要があります。参照フィールドの sys_id の代わりに表示値を使用する場合は、values オブジェクトではなく display_values オブジェクトでこの情報を渡します。 フィールド名とタイプは、次のようにユーザーが選択したフィールドによって異なります。 |
| input.items.settings | オブジェクト | 許可される更新のタイプを定義するパラメーター。 |
| input.items.settings.skipReclassificationRestrictionRules | ブール | IRE がペイロードアイテムのクラスに一致する再分類制限ルールを実行すべきかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.settings.updateWithoutDowngrade | ブール | このアイテムの更新とダウングレードの両方が許可されているかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.settings.updateWithoutSwitch | ブール | アイテムを更新してクラスを切り替えることができるかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.settings.updateWithoutUpgrade | ブール | このアイテムの更新とアップグレードの両方が許可されているかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.sys_object_source_info | オブジェクト | 特定のソースの一意の CI ID。 |
| input.items.sys_object_source_info.source_feed | 文字列 | ソースに複数のフィードを含めることができる場合は、このフィールドを使用して、このアイテムを送信するフィードの名前を指定します。 データソースはこのフィード名を生成します。ソース フィードを一意に識別する任意の文字列を指定できます。 |
| input.items.sys_object_source_info.source_name | 文字列 | CI 情報のデータソース。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| input.items.sys_object_source_info.source_native_key | 文字列 | ソースからのアイテムの一意のキー/ID。 データソースはこのキーを生成します。アイテムに固有の任意の文字列にすることができます。 |
| input.items.sys_object_source_info.source_recency_timestamp | 文字列 | アイテムがスキャンされた UTC 日時。 形式:YYYY-MM-DD hh:mm:ss |
| input.items.values | オブジェクト | この関連アイテム用に名前/値のペアとして作成または更新するフィールド。名前はフィールド名です。参照フィールドの場合、値は参照される sys_id である必要があります。参照フィールドの sys_id の代わりに表示値を使用する場合は、values オブジェクトではなく display_values オブジェクトでこの情報を渡します。 フィールド名とタイプは、次のようにユーザーが選択したフィールドによって異なります。 |
| input.referenceItems | アレイ | 入力ペイロード内のアイテム間の参照を定義するオブジェクトのアレイ。 |
| input.referenceItems.referenced | 文字列 | 別のアイテムによって参照されているアイテムに対して定義された internal_id。 |
| input.referenceItems.referencedBy | 文字列 | 別のアイテムを参照するアイテムに対して定義された internal_id。 |
| input.referenceItems.referenceField | 文字列 | referencedBy アイテムのクラス/テーブル内の参照フィールドの名前。 |
| input.relations | アレイ | 入力ペイロード内のアイテム間の関係を指定するオブジェクトのアレイ。 このアレイ内のオブジェクトは、2 つの形式のいずれかを使用できます。
|
| input.relations.child | 番号 | 関係の子 (items、items.related、または items.lookup) を表す items アレイ内の CI オブジェクトの整数インデックス。 |
| input.relations.child_id | 文字列 | 関係内の子アイテム (items、items.related、または items.lookup) の internal_id。 |
| input.relations.parent | 番号 | items アレイ内の親アイテム (items、items.related、または items.lookup) の整数インデックス。 |
| input.relations.parent_id | 文字列 | 関係内の親アイテム (items、items.related、または items.lookup) の internal_id。 |
| input.relations.sys_rel_source_info | オブジェクト | 関係の検出ソース情報。非依存関係の場合、この情報は関係ソース [sys_rel_source] テーブルに保存されます (identifyCIEnhanced() または identifyCI() メソッドでは保持されません)。 データタイプ:オブジェクト |
| input.relations.sys_rel_source_info.source_name | 文字列 | 検出ソース名。 デフォルト:API メソッドパラメーターで渡される検出ソース。 |
| input.relations.sys_rel_source_info.source_feed | 文字列 | 検出ソース内のサブ検出/スキャンである文字列。 デフォルト:「UNKNOWN」は、sys_rel_sourceテーブルにレコードを作成するときにsource_feed列に格納されます。 |
| input.relations.type | 文字列 | 親アイテムと子アイテムの間に存在する関係のタイプ。これは、CI 関係タイプ [cmdb_rel_type] テーブルからの名前フィールド値である必要があります。 |
| オプション | オブジェクト | オプションですが、{} または null を渡す必要があります。機能を有効または無効にするオプション。 注:
デフォルトでは、または partial_payloads が true に設定されている場合は、partial_commits と deduplicate_payloads の両方が (これらが false に設定されている場合でも) 有効になります。これらの機能は、部分的ペイロード機能に不可欠であるためです。 |
| options.deduplicate_payloads | ブール | 重複アイテムが結合されているか、またはエラーと見なされているかを示すフラグ。 有効な値:
デフォルト:true |
| options.generate_summary | ブール | 返された結果にサマリー情報が含まれているかどうかを示すフラグ。返されるサマリー情報の詳細については、返される結果テーブルの <String>.summary を参照してください。 有効な値:
デフォルト値:false |
| options.partial_commits | ブール | 部分的コミットのサポートが有効かどうかを示すフラグ。部分的コミットの詳細については、「 拡張 IRE 機能」を参照してください。 有効な値:
デフォルト:true |
| options.partial_payloads | ブール | 部分的ペイロードのサポートが有効かどうかを示すフラグ。部分的ペイロードの詳細については、「 拡張 IRE 機能 」および「 IRE のデータソースルールの作成」を参照してください。 有効な値:
デフォルト:true |
| options.skip_updating_last_scan_to_now | ブール | sys_object_source の last_scan 時間フィールドの更新をスキップするかどうかを示すフラグ。 有効な値:
デフォルト:glide.identification_engine.skip_updating_last_scan_to_now システムのプロパティの 値を使用します。 |
| options.skip_updating_source_last_discovered_to_now | ブール | 構成アイテム [cmdb_ci] テーブルの discovery_source フィールドと last_discovered フィールドの更新をスキップするかどうかを示すフラグ。 有効な値:
デフォルト:glide.identification_engine.skip_updating_source_last_discovered_to_now システムのプロパティの値を使用します。 |
| source | 文字列 | CI 情報のデータソース。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| パラメーター | 説明 |
|---|---|
| <String> | 入力文字列内の構成アイテムの結果のリストである JSON 形式の文字列。 データタイプ:文字列 |
| <String>.additionalCommittedItems | 現在のペイロードの IRE 処理中にコミットされても、現在の入力ペイロードに存在しなかった CI のリスト。 データタイプ:アレイ |
| <String>.additionalCommittedItems.className | この追加の CI の sys_class_name。 データタイプ:文字列 |
| <String>.additionalCommittedItems.errorCount | この追加の CI の処理中に発生したエラーの数。 データタイプ:数値 |
| <String>.additionalCommittedItems.errors | この追加の CI の処理中に発生したエラーを説明するオブジェクトのアレイ。 データタイプ:アレイ |
| <String>.additionalCommittedItems.errors.error | この追加の CI の処理中に発生したエラーのタイプ。 データタイプ:文字列 |
| <String>.additionalCommittedItems.errors.message | この追加の CI の処理中に発生したエラーメッセージ。 データタイプ:文字列 |
| <String>.additionalCommittedItems.identificationAttempts | 各オブジェクトがこの追加の CI を識別するために行われた試行を説明するオブジェクトのアレイ。 データタイプ:アレイ |
| <String>.additionalCommittedItems.identificationAttempts.attemptResult | この追加の CI 識別の試行の結果。 データタイプ:文字列 可能な値:
|
| <String>.additionalCommittedItems.identificationAttempts.attributes | この追加の CI の識別の試行中に使用される CI ID エントリ属性のアレイ。 データタイプ:アレイ 属性の名前とタイプは、次のような使用される要求本文データと識別子によって異なります。 |
| <String>.additionalCommittedItems.identificationAttempts.hybridEntryCiAttributes | この追加の CI の識別の試行中に使用される CI ID エントリ属性のアレイ。 データタイプ:アレイ 属性の名前とタイプは、次のような使用される要求本文データと識別子によって異なります。 |
| <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_id のリスト。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 の処理中に発生したエラーを説明するオブジェクトのアレイ。 データタイプ:アレイ |
| <String>.items.errors.error | CI の処理中に発生したエラーのタイプ。 データタイプ:文字列 |
| <String>.items.errors.message | エラーに関連するエラーメッセージ。 データタイプ:文字列 |
| <String>.items.identificationAttempts | CI を識別するために実行された試行のリスト。 データタイプ:アレイ |
| <String>.items.identificationAttempts.attemptResult | CI の識別の試行の結果。 可能な値:
データタイプ:文字列 |
| <String>.items.identificationAttempts.attributes | 識別プロセス中に使用された CI ID エントリ属性のリスト。 データタイプ:アレイ 属性の名前とタイプは、次のような使用される要求本文データと識別子によって異なります。 |
| <String>items.identificationAttempts.hybridEntryCiAttributes | 識別プロセス中に使用された CI ID エントリ属性のリスト。 データタイプ:アレイ 属性の名前とタイプは、次のような使用される要求本文データと識別子によって異なります。 |
| <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 が含まれます。 データタイプ:文字列 |
| <String>.items.info | アイテムの処理に関する追加情報を含むオブジェクトのリスト。 データタイプ:アレイ |
| <String>.items.info.code | スキップされた再分類タイプ。 可能な値:
データタイプ:文字列 |
| <String>.items.info.message | 再分類をスキップする理由に関する追加のインサイトを提供するメッセージ。 データタイプ:文字列 |
| <String>.items.info.ruleSysId | 一致した再分類制限ルールの sys_id。再分類制限ルールのために IRE が再分類をスキップする場合にのみ適用されます。ペイロードまたはグローバルフラグのために再分類がスキップされた場合、この値は空になります。 データタイプ:文字列 |
| <String>.items.inputIndices | 対応する入力 CI のインデックス。最上位レベルのアイテムの場合は、整数のリストです。関連 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 | 関連アイテムの処理中に発生したエラーのリスト。 データタイプ:アレイ |
| <String>.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 アレイからのインデックス値。 データタイプ:数値 |
| <String>.items.relatedItems.inputIndices.subIndex | 関連アイテムに対応する要求本文 items.lookup アレイからのインデックス値。 データタイプ:数値 |
| <String>.items.relatedItems.mergedPayloadIds | 処理中に CI に結合された部分的ペイロードの sys_id のリスト。 データタイプ:アレイ |
| <String>.items.relatedItems.operation | 実行された操作。 可能な値:
データタイプ:文字列 |
| <String>.items.relatedItems.partialSysIds | 関連アイテムにエラーがあり、部分的ペイロードとして保存された場合、これには、CMDB IRE 部分的ペイロード [cmdb_ire_partial_payloads] テーブル内の関連レコードの sys_id のリストが含まれます。 データタイプ:アレイ |
| <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 値のリスト。 データタイプ:文字列 |
| <String>.items.sys_id | 更新または作成された CI の sys_id。 データタイプ:文字列 |
| <String>.relations | 要求本文 relations アレイからの依存関係 CI を説明する JSON オブジェクトのリスト。 データタイプ:アレイ |
| <String>.relations.className | この依存関係 CI の sys_class_name。 サポートされている値:cmdb_rel_ci:CI 関係テーブル。 データタイプ:文字列 |
| <String>.relations.errorCount | 依存関係 CI の処理中に発生したエラーの数。 データタイプ:数値 |
| <String>.relations.errors | この依存関係 CI の処理中に発生したエラーを説明するオブジェクトのアレイ。 データタイプ:アレイ |
| <String>.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。 データタイプ:文字列 |
| <String>.summary | クラスごとに挿入または更新されたアイテムの数に関する統計情報を提供する 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 | 処理時に警告を生成したアイテムの数。 データタイプ:数値 |
依存型 CI を識別します。
var payload = {
"items": [
{
"className": "cmdb_ci_win_server",
"values": {
"chassis_type": "Desktop",
"os": "Windows 2012 R2 Datacenter",
"name": "Windows2012Server1",
"serial_number": "0000-0011-1690-8730-8636-5722-52",
"cpu_count": "1"
},
"lookup": [
{
"values": {
"valid": "true",
"serial_number": "0000-0011-1690-8730-8636-5722-52",
"serial_number_type": "bios"
},
"className": "cmdb_serial_number"
},
{
"values": {
"valid": "true",
"serial_number": "3311-9736-4988-9744-1749-4183-41",
"serial_number_type": "chassis"
},
"className": "cmdb_serial_number"
}],
"internal_id": "16777219",
"sys_object_source_info": {
"source_feed": "SN Discovery Feed 1",
"source_name": "ServiceNow",
"source_native_key": "16777219",
"source_recency_timestamp": "2019-10-18 08:31:23"
}},
{
"className": "cmdb_ci_spkg",
"values": {
"name": "Windows 2012 R2 Datacenter",
"key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL"
},
"related": [
{
"internal_id": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219",
"values": {
"name": "Windows 2012 R2 Datacenter-SAMLABVM52"
},
"className": "cmdb_software_instance",
"sys_object_source_info": {
"source_feed": "SN Discovery Feed 1",
"source_name": "ServiceNow",
"source_native_key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
}}]
"settings" : {
"skipReclassificationRestrictionRules" : "false",
"updateWithoutDowngrade" : "true",
"updateWithoutUpgrade" : "true",
"updateWithoutSwitch" : "true"
}},
{
"className": "cmdb_ci_app_server_tomcat",
"values": {
"running_process_key_parameters": "/opt/OV/nonOV/tomcat/b/temp org.apache.catalina.startup.Bootstrap start",
"install_directory": "/opt/OV/nonOV/tomcat/b",
"name": "Tomcat@hpom9:3443",
"server_port": "8006",
"sys_class_name": "cmdb_ci_app_server_tomcat"
},
"internal_id": "tomcat_id"
}],
"relations": [
{
"parent_id": "tomcat_id",
"child_id": "16777219",
"type": "Runs on::Runs"
}],
"referenceItems": [
{
"referenceField": "installed_on",
"referenced": "16777219",
"referencedBy": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
}]};
var input = new JSON().encode(payload);
var output = SNC.IdentificationEngineScriptableApi.createOrUpdateCIEnhanced('ServiceNow', input, {});
出力:
{
"items": [
{
"className": "cmdb_ci_win_server",
"operation": "NO_CHANGE",
"sysId": "65d873d2b3a0001028f6eae2c6a8dc2a",
"relatedSysIds": [
"a1d873d2b3a0001028f6eae2c6a8dc32",
"a1d873d2b3a0001028f6eae2c6a8dc33"
],
"relatedItems": [
{
"className": "cmdb_serial_number",
"sysId": "a1d873d2b3a0001028f6eae2c6a8dc32",
"markers": [],
"inputIndices": [
{
"mainIndex": 0,
"subIndex": 0
}]
},
"className": "cmdb_serial_number",
"sysId": "a1d873d2b3a0001028f6eae2c6a8dc33",
"markers": [],
"inputIndices": [
{
"mainIndex": 0,
"subIndex": 1
}]
}],
"additionalRelatedItems": [],
"identificationAttempts": [],
"errorCount": 0,
"inputIndices": [0]
},
{
"className": "cmdb_ci_spkg",
"operation": "NO_CHANGE",
"sysId": "c764e971b320001028f6eae2c6a8dc44",
"relatedSysIds": [
"8b64e971b320001028f6eae2c6a8dc47"
],
"relatedItems": [
{
"className": "cmdb_software_instance",
"sysId": "8b64e971b320001028f6eae2c6a8dc47",
"markers": [],
"inputIndices": [
{
"mainIndex": 1,
"subIndex": 0
}]
}],
"additionalRelatedItems": [],
"identifierEntrySysId": "a52a87c03746220006b216a543990e8c",
"identificationAttempts": [
{
"attributes": [
"key"
],
"identifierName": "Software",
"attemptResult": "MATCHED",
"searchOnTable": "cmdb_ci_spkg",
"hybridEntryCiAttributes": []
}],
"errorCount": 0,
"inputIndices": [1]
},
{
"className": "cmdb_ci_app_server_tomcat",
"operation": "INSERT",
"sysId": "6f29f3d2b3a0001028f6eae2c6a8dcc6",
"identifierEntrySysId": "Unknown",
"identificationAttempts": [
{
"attributes": [
"install_directory",
"running_process_key_parameters",
"sys_class_name"
],
"identifierName": "Tomcat",
"attemptResult": "NO_MATCH",
"searchOnTable": "cmdb_ci_app_server_tomcat",
"hybridEntryCiAttributes": []
},
{
"attributes": [
"cl_port",
"sys_class_name"
],
"identifierName": "Application Rule",
"attemptResult": "SKIPPED",
"searchOnTable": "cmdb_ci_appl",
"hybridEntryCiAttributes": []
},
{
"attributes": [
"running_process_command",
"running_process_key_parameters",
"sys_class_name"
],
"identifierName": "Application Rule",
"attemptResult": "NO_MATCH",
"searchOnTable": "cmdb_ci_appl",
"hybridEntryCiAttributes": []
}
],
"errorCount": 0,
"inputIndices": [2]
}
],
"additionalCommittedItems": [],
"relations": [
{
"className": "cmdb_rel_ci",
"operation": "INSERT",
"sysId": "6729f3d2b3a0001028f6eae2c6a8dcc9",
"errorCount": 0,
"inputIndices": [0]
}],
"additionalCommittedRelations": []
}
IdentificationEngineScriptableApi - identifyCI(文字列 jsonString)
データベース内の操作をコミットせずに指定されたペイロードで実行する操作 (挿入か更新か) を決定します。
これは createOrUpdateCI() と同じように機能しますが、結果はコミットされません。
| 名前 | タイプ | 説明 |
|---|---|---|
| jsonString | 文字列 | 追加または更新する構成アイテムの JSON 形式の文字列。それぞれの入力文字列の形式は「items: [{}], related:[{}]」で、アイテムと関係リスト内の各アイテムに名前と値のペアが含まれています。 アイテムリストで使用できる名前と値のペアは次のとおりです。
関連リストで使用できる名前と値のペアは次のとおりです。
|
| タイプ | 説明 |
|---|---|
| 文字列 | 結果のリストである JSON 形式の文字列。それぞれの結果文字列の形式は「items: [{}], related:[{}]」で、アイテムと関係リスト内の各アイテムに名前と値のペアが含まれています。 アイテムリストで使用できる名前と値のペアは次のとおりです。
関連リストで使用できる名前と値のペアは次のとおりです。
|
ルックアップベースの識別で独立型 CI を識別します。
var payload = {items: [
{className:'cmdb_ci_netgear',
values: {name:'ny8500-nbxs08',
ports:'1200'},
lookup: [{className:'cmdb_serial_number',
values:{serial_number:'1234ABCD', serial_number_type:'uuid',absent:'false',valid:'true'}},
{className:'cmdb_serial_number',
values:{serial_number:'3456EFGH', serial_number_type:'system',absent:'false',valid:'true'}}]}]};
var jsonUntil = new JSON();
var input = jsonUntil.encode(payload);
var output = SNC.IdentificationEngineScriptableApi.identifyCI(input);
gs.print(output);
出力:
{
"items": [
{
"className": "cmdb_ci_netgear",
"operation": "UPDATE",
"sysId": "55b35562c0a8010e01cff22378e0aea9",
"relatedSysIds": [
null,
null
],
"relatedItems": [
{
"errors": [
],
"operation": "INSERT",
"info": [
],
"errorCount": 0,
"mergedPayloadIds": [
],
"inputIndices": [
{
"mainIndex": 0,
"subIndex": 0
}
],
"warningCount": 0,
"markers": [
],
"className": "cmdb_serial_number"
},
{
"errors": [
],
"operation": "INSERT",
"info": [
],
"errorCount": 0,
"mergedPayloadIds": [
],
"inputIndices": [
{
"mainIndex": 0,
"subIndex": 1
}
],
"warningCount": 0,
"markers": [
],
"className": "cmdb_serial_number"
}
],
"identifierEntrySysId": "556eb250c3400200d8d4bea192d3ae92",
"identificationAttempts": [
{
"info": "sys_object_source SKIPPED",
"identifierName": "",
"attemptResult": "SKIPPED",
"attributes": [
"source_name",
"source_native_key"
],
"searchOnTable": "sys_object_source",
"hybridEntryCiAttributes": [
]
},
{
"identifierName": "Hardware Rule",
"attemptResult": "NO_MATCH",
"attributes": [
"serial_number",
"serial_number_type"
],
"searchOnTable": "cmdb_serial_number",
"hybridEntryCiAttributes": [
]
},
{
"identifierName": "Hardware Rule",
"attemptResult": "SKIPPED",
"attributes": [
"serial_number"
],
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": [
]
},
{
"identifierName": "Hardware Rule",
"attemptResult": "MATCHED",
"attributes": [
"name"
],
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": [
]
}
],
"info": [
],
"errorCount": 0,
"mergedPayloadIds": [
],
"inputIndices": [
0
],
"warningCount": 0,
"markers": [
]
}
],
"additionalCommittedItems": [
],
"relations": [
],
"additionalCommittedRelations": [
],
"hasError": false,
"hasWarning": false
}
スコープ対応
スコープ対象のアプリケーションで identifyCI(文字列 jsonString)メソッドを使用するには、対応するスコープ指定の IdentificationEngine メソッド identifyCI(文字列 jsonString) を使用します。
IdentificationEngineScriptableApi - identifyCIEnhanced(文字列 source, 文字列 input, オブジェクト options)
データベース内の 構成管理データベース (CMDB) の操作をコミットせずに指定されたペイロード (要求の本文) で実行する操作 (挿入か更新か) を決定します。
このメソッドを使用してペイロードの送信をシミュレーションします。
- 部分的ペイロード
- アイテムに警告またはエラーがある場合は、アイテムの操作が INSERT_AS_PARTIAL か INSERT_INCOMPLETE かを示します。
- 既存の部分的ペイロードと結合された部分的ペイロードの sys_id を返します。
- ペイロードの重複排除機能をサポートします。
- サマリを生成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| 入力 | 文字列 | 必須です。入力ペイロード。追加または更新する構成アイテムの JSON 形式の文字列。 |
| input.items | アレイ | 追加または更新するアイテムを定義するオブジェクトのアレイ。 |
| input.items.className | 文字列 | 必須です。作成または更新する構成アイテム (CI) のクラス/テーブル名 sys_class_name。 この値は、cmdb_ci_linux_server や cmdb_ci_win_server などの任意の CMDB クラス/テーブルにすることができます。 |
| input.items.display_values | オブジェクト | この関連アイテム用に名前と値のペアとして作成または更新する参照フィールド。名前はフィールド名で、値は参照される表示値です。参照フィールドの表示値の代わりに sys_id を使用する場合は、このパラメーターではなく input.items.lookup.values パラメーターで情報を渡します。 参照フィールド名は、次のようにユーザーが選択したフィールドによって異なります。 |
| input.items.internal_id | 文字列 | 関連付けられたペイロードの一意のアイテム識別子。 これは任意の値にすることができますが、ペイロード内で一意である必要があります。 |
| input.items.lookup | アレイ | ルックアップを含むトップレベルのアイテムを識別します (ルックアップベースの識別)。これらのレコードは、cmdb_ci への参照を含むルックアップテーブルに基づいて構成アイテムを識別するために使用されます。 例: |
| input.items.lookup.className | 文字列 | 必須です。作成または更新する構成アイテム (CI) のクラス/テーブル名 sys_class_name。 この値は、cmdb_serial_number や cmdb_ci_network_adapter などの任意の CMDB クラス/テーブルにすることができます。 |
| input.items.lookup.internal_id | 文字列 | 関連付けられたペイロードの一意のルックアップアイテム識別子。 これは任意の値にすることができますが、ペイロード内で一意である必要があります。 |
| input.items.lookup.sys_object_source_info | オブジェクト | 特定のデータソースの一意の CI ID を定義します。同じ CI でもソースが異なると、名前と値のペアが異なる場合があります。 |
| input.items.lookup.sys_object_source_info.source_feed | 文字列 | ソースに複数のフィードを含めることができる場合は、このフィールドを使用して、このアイテムを送信するフィードの名前を指定します。 データソースはこのフィード名を生成します。ソース フィードを一意に識別する任意の文字列を指定できます。 |
| input.items.lookup.sys_object_source_info.source_name | 文字列 | CI 情報のデータソース。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| input.items.lookup.sys_object_source_info.source_native_key | 文字列 | ソースからのアイテムの一意のキー ID。 データソースはこのキーを生成します。アイテムに固有の任意の文字列にすることができます。 |
| input.items.lookup.sys_object_source_info.source_recency_timestamp | 文字列 | アイテムがスキャンされた UTC 日時。 形式:YYYY-MM-DD hh:mm:ss |
| input.items.lookup.values | オブジェクト | 名前と値のペアとしての CI のフィールド情報。この場合の名前はフィールド名です。参照フィールドを更新する場合、値は参照される sys_id である必要があります。 フィールド名とタイプは、次のようにユーザーが選択したフィールドによって異なります。 |
| input.items.related | アレイ | 関連リストを含むトップレベルのアイテムへの参照。関連エントリ [cmdb_related_entry] のルールは、このアレイに含めることができるレコードのタイプを定義します。これらのレコードは、識別されている CI への参照を含む関連テーブルに基づいてアイテムを追加するために使用されます。 関連テーブルは、cmdb_ci を拡張する場合と拡張しない場合があります。これらのレコードは、構成アイテムの識別には使用されません。 |
| input.items.related.className | 文字列 | 必須です。作成または更新する構成アイテム (CI) のクラス/テーブル名 sys_class_name。 この値は、cmdb_software_instance や cmdb_key_value などの任意の CMDB クラス/テーブルにすることができます。 |
| input.items.related.internal_id | 文字列 | このペイロードのこの関連アイテムの一意の識別子。任意の値にすることができますが、ペイロード内で一意である必要があります。 |
| input.items.related.sys_object_source_info | オブジェクト | 指定されたデータソースの一意の CI ID を構成するオブジェクト。同じ CI でもソースが異なると、名前と値のペアが異なる場合があります。 |
| input.items.related.sys_object_source_info.source_feed | 文字列 | ソースに複数のフィードを含めることができる場合は、このフィールドを使用して、このアイテムを送信するフィードの名前を指定します。 データソースはこのフィード名を生成します。ソース フィードを一意に識別する任意の文字列を指定できます。 |
| input.items.related.sys_object_source_info.source_name | 文字列 | CI 情報のデータソースを識別します。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| input.items.related.sys_object_source_info.source_native_key | 文字列 | 関連アイテムのソースからの一意のキー/ID。 データソースはこのキーを生成します。アイテムに固有の任意の文字列にすることができます。 |
| input.items.related.sys_object_source_info.source_recency_timestamp | 文字列 | アイテムがスキャンされた UTC 日時。 形式: |
| input.items.related.values | オブジェクト | この関連アイテム用に名前/値のペアとして作成または更新するフィールド。名前はフィールド名です。参照フィールドの場合、値は参照される sys_id である必要があります。参照フィールドの sys_id の代わりに表示値を使用する場合は、values オブジェクトではなく display_values オブジェクトでこの情報を渡します。 フィールド名とタイプは、次のようにユーザーが選択したフィールドによって異なります。 |
| input.items.settings | オブジェクト | 許可される更新のタイプを定義するパラメーター。 |
| input.items.settings.skipReclassificationRestrictionRules | ブール | IRE がペイロードアイテムのクラスに一致する再分類制限ルールを実行すべきかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.settings.updateWithoutDowngrade | ブール | このアイテムの更新とダウングレードの両方が許可されているかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.settings.updateWithoutSwitch | ブール | アイテムを更新してクラスを切り替えることができるかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.settings.updateWithoutUpgrade | ブール | このアイテムの更新とアップグレードの両方が許可されているかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| input.items.sys_object_source_info | オブジェクト | 特定のソースの一意の CI ID。 |
| input.items.sys_object_source_info.source_feed | 文字列 | ソースに複数のフィードを含めることができる場合は、このフィールドを使用して、このアイテムを送信するフィードの名前を指定します。 データソースはこのフィード名を生成します。ソース フィードを一意に識別する任意の文字列を指定できます。 |
| input.items.sys_object_source_info.source_name | 文字列 | CI 情報のデータソース。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| input.items.sys_object_source_info.source_native_key | 文字列 | ソースからのアイテムの一意のキー/ID。 データソースはこのキーを生成します。アイテムに固有の任意の文字列にすることができます。 |
| input.items.sys_object_source_info.source_recency_timestamp | 文字列 | アイテムがスキャンされた UTC 日時。 形式:YYYY-MM-DD hh:mm:ss |
| input.items.values | オブジェクト | この関連アイテム用に名前/値のペアとして作成または更新するフィールド。名前はフィールド名です。参照フィールドの場合、値は参照される sys_id である必要があります。参照フィールドの sys_id の代わりに表示値を使用する場合は、values オブジェクトではなく display_values オブジェクトでこの情報を渡します。 フィールド名とタイプは、次のようにユーザーが選択したフィールドによって異なります。 |
| input.referenceItems | アレイ | 入力ペイロード内のアイテム間の参照を定義するオブジェクトのアレイ。 |
| input.referenceItems.referenced | 文字列 | 別のアイテムによって参照されているアイテムに対して定義された internal_id。 |
| input.referenceItems.referencedBy | 文字列 | 別のアイテムを参照するアイテムに対して定義された internal_id。 |
| input.referenceItems.referenceField | 文字列 | referencedBy アイテムのクラス/テーブル内の参照フィールドの名前。 |
| input.relations | アレイ | 入力ペイロード内のアイテム間の関係を指定するオブジェクトのアレイ。 このアレイ内のオブジェクトは、2 つの形式のいずれかを使用できます。
|
| input.relations.child | 番号 | 関係の子 (items、items.related、または items.lookup) を表す items アレイ内の CI オブジェクトの整数インデックス。 |
| input.relations.child_id | 文字列 | 関係内の子アイテム (items、items.related、または items.lookup) の internal_id。 |
| input.relations.parent | 番号 | items アレイ内の親アイテム (items、items.related、または items.lookup) の整数インデックス。 |
| input.relations.parent_id | 文字列 | 関係内の親アイテム (items、items.related、または items.lookup) の internal_id。 |
| input.relations.sys_rel_source_info | オブジェクト | 関係の検出ソース情報。非依存関係の場合、この情報は関係ソース [sys_rel_source] テーブルに保存されます (identifyCIEnhanced() または identifyCI() メソッドでは保持されません)。 データタイプ:オブジェクト |
| input.relations.sys_rel_source_info.source_name | 文字列 | 検出ソース名。 デフォルト:API メソッドパラメーターで渡される検出ソース。 |
| input.relations.sys_rel_source_info.source_feed | 文字列 | 検出ソース内のサブ検出/スキャンである文字列。 デフォルト:「UNKNOWN」は、sys_rel_sourceテーブルにレコードを作成するときにsource_feed列に格納されます。 |
| input.relations.type | 文字列 | 親アイテムと子アイテムの間に存在する関係のタイプ。これは、CI 関係タイプ [cmdb_rel_type] テーブルからの名前フィールド値である必要があります。 |
| オプション | オブジェクト | オプションですが、{} または null を渡す必要があります。機能を有効または無効にするオプション。 注:
デフォルトでは、または partial_payloads が true に設定されている場合は、partial_commits と deduplicate_payloads の両方が (これらが false に設定されている場合でも) 有効になります。これらの機能は、部分的ペイロード機能に不可欠であるためです。 |
| options.deduplicate_payloads | ブール | 重複アイテムが結合されているか、またはエラーと見なされているかを示すフラグ。 有効な値:
デフォルト:true |
| options.generate_summary | ブール | 返された結果にサマリー情報が含まれているかどうかを示すフラグ。返されるサマリー情報の詳細については、返される結果テーブルの <String>.summary を参照してください。 有効な値:
デフォルト値:false |
| options.partial_commits | ブール | 部分的コミットのサポートが有効かどうかを示すフラグ。部分的コミットの詳細については、「 拡張 IRE 機能」を参照してください。 有効な値:
デフォルト:true |
| options.partial_payloads | ブール | 部分的ペイロードのサポートが有効かどうかを示すフラグ。部分的ペイロードの詳細については、「 拡張 IRE 機能 」および「 IRE のデータソースルールの作成」を参照してください。 有効な値:
デフォルト:true |
| options.skip_updating_last_scan_to_now | ブール | sys_object_source の last_scan 時間フィールドの更新をスキップするかどうかを示すフラグ。 有効な値:
デフォルト:glide.identification_engine.skip_updating_last_scan_to_now システムのプロパティの 値を使用します。 |
| options.skip_updating_source_last_discovered_to_now | ブール | 構成アイテム [cmdb_ci] テーブルの discovery_source フィールドと last_discovered フィールドの更新をスキップするかどうかを示すフラグ。 有効な値:
デフォルト:glide.identification_engine.skip_updating_source_last_discovered_to_now システムのプロパティの値を使用します。 |
| source | 文字列 | CI 情報のデータソース。この値は、構成アイテム [cmdb_ci] テーブルの discovery_source フィールドに定義された選択値の 1 つである必要があります。 |
| タイプ | 説明 |
|---|---|
| <String> | 入力文字列内の構成アイテムの結果のリストである JSON 形式の文字列。 データタイプ:文字列 |
| <String>.additionalCommittedItems | 現在のペイロードの IRE 処理中にコミットされても、現在の入力ペイロードに存在しなかった CI のリスト。 データタイプ:アレイ |
| <String>.additionalCommittedRelations | 挿入または更新する要求本文 relations リストに含まれなかった依存関係 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_id のリスト。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 の処理中に発生したエラーを説明するオブジェクトのアレイ。 データタイプ:アレイ |
| <String>.items.errors.error | CI の処理中に発生したエラーのタイプ。 データタイプ:文字列 |
| <String>.items.errors.message | CI の処理中に発生したエラーメッセージ。 データタイプ:文字列 |
| <String>.items.identificationAttempts | CI を識別するために実行された試行のリスト。 データタイプ:アレイ |
| <String>.items.identificationAttempts.attemptResult | CI の識別の試行の結果。 可能な値:
データタイプ:文字列 |
| <String>.items.identificationAttempts.attributes | 識別プロセス中に使用された CI ID エントリ属性のリスト。 データタイプ:アレイ 属性の名前とタイプは、次のような使用される要求本文データと識別子によって異なります。 |
| <String>.items.identificationAttempts.identifierName | この CI の識別試行に使用される識別子ルール。 データタイプ:文字列 |
| <String>.items.identificationAttempts.searchOnTable | 識別プロセス中に検索されたテーブルの名前。 データタイプ:文字列 |
| <String>.items.identifierEntrySysId | CI を識別するために使用される識別子ルールの sys_id。識別子エントリー [cmdb_identifier_entry] テーブルにあります。 データタイプ:文字列 |
| <String>.items.info | アイテムの処理に関する追加情報を含むオブジェクトのリスト。 データタイプ:アレイ |
| <String>.items.info.code | スキップされた再分類タイプ。 可能な値:
データタイプ:文字列 |
| <String>.items.info.message | 再分類をスキップする理由に関する追加のインサイトを提供するメッセージ。 データタイプ:文字列 |
| <String>.items.info.ruleSysId | 一致した再分類制限ルールの sys_id。再分類制限ルールのために IRE が再分類をスキップする場合にのみ適用されます。ペイロードまたはグローバルフラグのために再分類がスキップされた場合、この値は空になります。 データタイプ:文字列 |
| <String>.items.inputIndices | 対応する入力 CI のインデックス。最上位レベルのアイテムの場合は、整数のリストです。関連 CI またはルックアップ CI の場合は、JSON オブジェクトのリストです。 データタイプ:数値のアレイ |
| <String>.items.maskedAttributes | 調整ルールの定義に従って、権限のないデータソースによる更新がスキップされた属性のリスト。 データタイプ:アレイ |
| <String>.items.operation | 実行された操作。 可能な値:
データタイプ:文字列 |
| <String>.items.relatedItems | 処理された関連アイテムに関する情報を提供する JSON オブジェクトのリスト。 データタイプ:アレイ |
| <String>.items.relatedItems.className | 関連アイテムのクラス/テーブル名 (sys_class_name)。 データタイプ:文字列 |
| <String>.items.relatedItems.errorCount | 関連アイテムの処理中に検出されたエラーの数。 データタイプ:数値 |
| <String>.items.relatedItems.errors | 関連アイテムの処理中に発生したエラーのリスト。 データタイプ:アレイ |
| <String>.items.relatedItems.errors.error | 関連アイテムの処理中に発生したエラーのタイプ。 データタイプ:文字列 |
| <String>.items.relatedItems.errors.message | 関連アイテムの処理中に発生したエラーメッセージ。 データタイプ:文字列 |
| <String>.items.relatedItems.inputIndices | 対応する入力アイテムのインデックス。最上位レベルのアイテムの場合は、整数のリストです。関連アイテムまたはルックアップアイテムの場合は、JSON オブジェクトのリストです。 データタイプ:数値のアレイまたはオブジェクトのアレイ |
| <String>.items.relatedItems.inputIndices.mainIndex | 関連アイテムの CI の親に対応する要求本文 items アレイからのインデックス値。 データタイプ:数値 |
| <String>.items.relatedItems.inputIndices.subIndex | 関連アイテムに対応する要求本文 items.lookup アレイからのインデックス値。 データタイプ:数値 |
| <String>.items.relatedItems.mergedPayloadIds | 処理中に CI に結合された部分的ペイロードの sys_id のリスト。 データタイプ:アレイ |
| <String>.items.relatedItems.operation | 実行された操作。 可能な値:
データタイプ:文字列 |
| <String>.items.relatedItems.sysId | 関連アイテムの sys_id。 データタイプ:文字列 |
| <String>.items.relatedItems.warningCount | 関連アイテムの処理中に発生した警告の数。 データタイプ:数値 |
| <String>.items.relatedItems.warnings | この関連アイテムの処理中に発生した警告を説明するオブジェクトのアレイ。 データタイプ:アレイ |
| <String>.items.relatedSysIds | 関連アイテムのルックアップベースの識別中に使用される CI の sys_id 値のリスト。 データタイプ:文字列 |
| <String>.items.sys_id | 更新または作成された CI の sys_id。 データタイプ:文字列 |
| <String>.relations | 処理された関係に関する情報を提供する JSON オブジェクトのリスト。 データタイプ:アレイ |
| <String>.relations.className | この依存関係 CI の sys_class_name。 サポートされている値:cmdb_rel_ci:CI 関係テーブル。 データタイプ:文字列 |
| <String>.relations.errorCount | 依存関係 CI の処理中に発生したエラーの数。 データタイプ:数値 |
| <String>.relations.errors | この依存関係 CI の処理中に発生したエラーを説明するオブジェクトのアレイ。 データタイプ:アレイ |
| <String>.relations.inputIndices | この依存関係 CI に対応する要求本文 relations アレイ内の依存関係 CI オブジェクトのインデックス。 データタイプ:アレイ |
| <String>.relations.operation | 実行された操作のタイプ。 可能な値:
データタイプ:文字列 |
| <String>.relations.sysId | 依存関係 CI の sys_id。 データタイプ:文字列 |
| <String>.summary | クラスごとに挿入または更新されたアイテムの数に関する統計情報を提供する 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 | 処理時に警告を生成したアイテムの数。 データタイプ:数値 |
var payload = {
"items": [
{
"className": "cmdb_ci_win_server",
"values": {
"chassis_type": "Desktop",
"os": "Windows 2012 R2 Datacenter",
"name": "Windows2012Server1",
"serial_number": "0000-0011-1690-8730-8636-5722-52",
"cpu_count": "1"
},
"lookup": [
{
"values": {
"valid": "true",
"serial_number": "0000-0011-1690-8730-8636-5722-52",
"serial_number_type": "bios"
},
"className": "cmdb_serial_number"
},
{
"values": {
"valid": "true",
"serial_number": "3311-9736-4988-9744-1749-4183-41",
"serial_number_type": "chassis"
},
"className": "cmdb_serial_number"
}],
"internal_id": "16777219",
"sys_object_source_info": {
"source_feed": "SN Discovery Feed 1",
"source_name": "ServiceNow",
"source_native_key": "16777219",
"source_recency_timestamp": "2019-10-18 08:31:23"
}},
{
"className": "cmdb_ci_spkg",
"values": {
"name": "Windows 2012 R2 Datacenter",
"key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL"
},
"related": [
{
"internal_id": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219",
"values": {
"name": "Windows 2012 R2 Datacenter-SAMLABVM52"
},
"className": "cmdb_software_instance",
"sys_object_source_info": {
"source_feed": "SN Discovery Feed 1",
"source_name": "ServiceNow",
"source_native_key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
}},
{
"internal_id": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777229",
"values": {
},
"className": "cmdb_software_instance",
"sys_object_source_info": {
"source_feed": "SN Discovery Feed 1",
"source_name": "ServiceNow",
"source_native_key": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777229"
}}
],
"settings" : {
"skipReclassificationRestrictionRules" : "true",
"updateWithoutDowngrade" : "true",
"updateWithoutUpgrade" : "true",
"updateWithoutSwitch" : "true"
}},
{
"className": "cmdb_ci_app_server_tomcat",
"values": {
"running_process_key_parameters": "/opt/OV/nonOV/tomcat/b/temp org.apache.catalina.startup.Bootstrap start",
"install_directory": "/opt/OV/nonOV/tomcat/b",
"name": "Tomcat@hpom9:3443",
"server_port": "8006",
"sys_class_name": "cmdb_ci_app_server_tomcat"
},
"internal_id": "tomcat_id"
}],
"relations": [
{
"parent_id": "tomcat_id",
"child_id": "16777219",
"type": "Runs on::Runs"
}],
"referenceItems": [
{
"referenceField": "installed_on",
"referenced": "16777219",
"referencedBy": "Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777219"
}]};
var input = new JSON().encode(payload);
var output = SNC.IdentificationEngineScriptableApi.identifyCIEnhanced('ServiceNow', input, {});
出力:
{
"items": [
{
"className": "cmdb_ci_win_server",
"operation": "INSERT",
"relatedSysIds": [
null,
null
],
"relatedItems": [
{
"errors": [],
"operation": "INSERT",
"className": "cmdb_serial_number",
"errorCount": 0,
"markers": [],
"inputIndices": [
{
"mainIndex": 0,
"subIndex": 0
}
],
"mergedPayloadIds": [],
"warningCount": 0
},
{
"errors": [],
"operation": "INSERT",
"className": "cmdb_serial_number",
"errorCount": 0,
"markers": [],
"inputIndices": [
{
"mainIndex": 0,
"subIndex": 1
}
],
"mergedPayloadIds": [],
"warningCount": 0
}
],
"identificationAttempts": [
{
"attributes": [],
"info": "sys_object_source NO_MATCH",
"identifierName": "",
"attemptResult": "NO_MATCH",
"hybridEntryCiAttributes": []
},
{
"attributes": [
"serial_number",
"serial_number_type"
],
"identifierName": "Hardware Rule",
"attemptResult": "NO_MATCH",
"searchOnTable": "cmdb_serial_number",
"hybridEntryCiAttributes": []
},
{
"attributes": [
"serial_number"
],
"identifierName": "Hardware Rule",
"attemptResult": "NO_MATCH",
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": []
},
{
"attributes": [
"name"
],
"identifierName": "Hardware Rule",
"attemptResult": "NO_MATCH",
"searchOnTable": "cmdb_ci_hardware",
"hybridEntryCiAttributes": []
},
{
"attributes": [
"mac_address",
"name"
],
"identifierName": "Hardware Rule",
"attemptResult": "SKIPPED",
"searchOnTable": "cmdb_ci_network_adapter",
"hybridEntryCiAttributes": []
}
],
"errorCount": 0,
"markers": [],
"inputIndices": [
0
],
"mergedPayloadIds": [],
"warningCount": 0
},
{
"className": "cmdb_ci_spkg",
"operation": "INSERT",
"relatedSysIds": [
null
],
"relatedItems": [
{
"errors": [],
"operation": "INSERT",
"className": "cmdb_software_instance",
"errorCount": 0,
"markers": [],
"inputIndices": [
{
"mainIndex": 1,
"subIndex": 0
}
],
"mergedPayloadIds": [],
"warningCount": 0
},
{
"errors": [],
"warnings": [
{
"error": "MISSING_MATCHING_ATTRIBUTES",
"message": "In payload missing minimum set of input values for criterion (matching) attributes from identify rule for table [cmdb_software_instance]. Add these input values in payload item '{\"className\":\"cmdb_software_instance\",\"values\":{},\"internal_id\":\"f7273cccec30101056cd4bb46eb4db5d\",\"sys_object_source_info\":{\"source_feed\":\"SN Discovery Feed 1\",\"source_name\":\"ServiceNow\",\"source_native_key\":\"Microsoft Windows Server 2012 R2 Datacenter_:::_NULL|16777229\"},\"settings\":{},\"sys_ire_info\":{\"ire_received_time\":\"2020-05-10 17:57:48\"}}'"
}
],
"operation": "INSERT_AS_PARTIAL",
"className": "cmdb_software_instance",
"errorCount": 0,
"sysId": "Unknown",
"markers": [],
"inputIndices": [
{
"mainIndex": 1,
"subIndex": 1
}
],
"mergedPayloadIds": [],
"warningCount": 1
}
],
"identificationAttempts": [
{
"attributes": [],
"info": "sys_object_source SKIPPED",
"identifierName": "",
"attemptResult": "SKIPPED",
"hybridEntryCiAttributes": []
},
{
"attributes": [
"key"
],
"identifierName": "Software",
"attemptResult": "NO_MATCH",
"searchOnTable": "cmdb_ci_spkg",
"hybridEntryCiAttributes": []
}
],
"errorCount": 0,
"markers": [],
"inputIndices": [
1
],
"mergedPayloadIds": [],
"warningCount": 0
},
{
"className": "cmdb_ci_app_server_tomcat",
"operation": "INSERT",
"identificationAttempts": [
{
"attributes": [],
"info": "sys_object_source SKIPPED",
"identifierName": "",
"attemptResult": "SKIPPED",
"hybridEntryCiAttributes": []
}
],
"errorCount": 0,
"markers": [],
"inputIndices": [
2
],
"mergedPayloadIds": [],
"warningCount": 0
}
],
"additionalCommittedItems": [],
"relations": [
{
"className": "cmdb_rel_ci",
"operation": "INSERT",
"errorCount": 0,
"markers": [],
"inputIndices": [
0
],
"mergedPayloadIds": [],
"warningCount": 0
}
],
"additionalCommittedRelations": []
}
IdentificationEngineScriptableApi - runIdentificationAudit(GlideRecord now_GR)
指定された構成アイテム (CI) に対して識別監査を実行して、重複を検出します。
重複が見つかった場合は、重複タスクが作成されます。このメソッドは、独立した識別ルールを持つ CI タイプでのみ使用してください。
| 名前 | タイプ | 説明 |
|---|---|---|
| now_GR | GlideRecord | 重複を検出する監査の実行対象となる CI。CI は独立した識別ルールを持っている必要があります。 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、サーバーに重複タスクがないか確認し、重複タスクの修正を作成する方法を示しています。
var grServer = new GlideRecord('cmdb_ci_server');
grServer.query();
while (grServer.next()) {
SNC.IdentificationEngineScriptableApi.runIdentificationAudit(grServer);
}
スコープ対応
スコープ対象のアプリケーションで runIdentificationAudit(GlideRecord now_GR) メソッドを使用するには、対応するスコープ対象の IdentificationEngine メソッド runIdentificationAudit(GlideRecord now_GR) を使用します。