RTE transforme les scripts de modèle inclus dans l’application Éléments communs d'intégration pour CMDB

  • Rversion finale: Xanadu
  • Mis à jour 30 août 2024
  • 23 minutes de lecture
  • Les transformations RTE (Robust Transform Engine) sont des opérations basées sur un modèle incluses dans l’application de stockage Éléments communs d'intégration pour CMDB (sn_cmdb_int_util).

    Les transformations RTE basées sur des scripts suivantes sont disponibles dans l’application Éléments communs d'intégration pour CMDB .

    Opération de recherche de CI

    Utilisez cette propriété pour obtenir la valeur d’un champ sur un élément de configuration (CI) existant dans la CMDB par la clé native source.

    Détails
    Table Opération de recherche de CI du moteur de transformation robuste [sn_cmdb_int_util_ci_lookup_operation]
    Champ d'entrée source_sys_rte_eb_field
    Les entrées dans l’ordre sont les suivantes :
    1. Source de découverte
    2. Clé native de la source
    3. Champ CI

    L’opération interroge la table Source [sys_object_source] pour la source de détection et la clé native source associée, puis renvoie la valeur de champ CI de l’enregistrement correspondant dans la table cible et l’ID système cible associé.

    Champ de sortie target_sys_rte_eb_field

    La sortie est la valeur du nom de champ sur le CI correspondant à la recherche de clé native source ou à une chaîne vide en l’absence de correspondance.

    La table Source [sys_object_source] est interrogée à l’aide de la source de détection et de l’ordre des clés natives source par la dernière analyse. La table itère à travers les résultats de la requête et interroge la table cible par l’ID système cible jusqu’à ce qu’un CI valide soit trouvé. Une fois qu’un CI valide est trouvé, l’opération renvoie la valeur du champ CI sur le CI correspondant.

    Tableau 1. Exemple
    Source de découverte Clé native de la source Champ CI Résultat
    ServiceNow ServiceNow|||NOM-ORDINATEUR|||Ordinateur-01 name Computer-01

    Nettoyer la société

    Permet de nettoyer le nom du fabricant de matériel et d’ajouter l’enregistrement à la table Société [core_company] pour remplir une référence, lorsque le fabricant n’est pas lié à un modèle ou à un logiciel (cpu_manufacturer).

    Détails
    Table Opération de la société de nettoyage sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_cleanse_company_operation]
    Champ d'entrée source_sys_rte_eb_field

    L’entrée est un nom de société/fabricant.

    Champ de sortie target_sys_rte_eb_field

    La sortie est le sys_id et le nom de la société en core_company, concaténés par un triple tuyau (|||).

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationHardwareModelUtil().cleanseCompany(input)

    Si aucun enregistrement correspondant n’existe, un nouvel enregistrement est créé dans core_company de sorte que la déclaration inclut toujours un sys_id et un nom (sauf si l’entrée est vide ou non valide). Le nom est nettoyé et une recherche approximative est effectuée via l’include de script CmdbIntegrationCompanyModelUtil avant l’appel de l’API de plateforme MakeAndModelJS.

    Tableau 2. Exemple
    Entrée Résultat
    SERVICENOW 93d4ecfac0a8000b6294d71b733977fb|||ServiceNow

    Nettoyer le modèle de matériel

    Permet de créer, de nettoyer ou de rechercher un modèle matériel pour créer une référence (model_id).

    Détails
    Table Opération du modèle de matériel de nettoyage sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_cleanse_hardware_model_operation]
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. Le nom du fabricant
    2. Nom du modèle

    Si l’une ou l’autre valeur est fournie seule, l’opération traite uniquement ce qui est trouvé.

    Champ de sortie target_sys_rte_eb_field

    La sortie est le sys_id et le nom de la société en core_company, ainsi que le sys_id et le nom du modèle en cmdb_model - le tout concaténé par un triple tuyau (|||).

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationHardwareModelUtil().cleanseModelAndCompany(manufacturer_in, model_in)

    Pour le fabricant ou le modèle, si aucun enregistrement correspondant n’existe, un nouvel enregistrement est créé de sorte que la déclaration inclut toujours les sys_ids et les noms des deux enregistrements (sauf si l’entrée est vide ou non valide).

    Le nom du fabricant est traité comme la transformation de Cleanse Company, puis le nom du fabricant, le nom du modèle et le sont envoyés à l’API de la plateforme MakeAndModelJS.

    Tableau 3. Exemple
    Nom du fabricant Nom du modèle Résultat
    ServiceNow Incorporated SERVICENOW 93d4ecfac0a8000b6294d71b733977fb|||ServiceNow|||ba29cb303710200044e0bfc8bcbe5d6d |||ServiceNow

    Nettoyer le modèle de matériel avec le numéro de modèle

    Permet de créer, de nettoyer ou de rechercher un modèle matériel pour créer une référence (model_id).

    Détails
    Table Opération du modèle matériel de nettoyage sur l’entité du moteur de transformation robuste avec le numéro de modèle [sn_cmdb_int_util_cleanse_hardware_model_number_operation]
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. Le nom du fabricant
    2. Nom du modèle
    3. Le numéro de modèle
    4. Classe CI
      Remarque :
      Le champ Classe CI est un champ d’entrée facultatif et, lorsqu’il est inclus, l’API de plateforme MakeAndModelJS obtient l’enregistrement du modèle en interrogeant la classe de modèle de produit à partir de la table Catégorie de modèle [cmdb_model_category]. Sinon, l’API obtient l’enregistrement du modèle à partir de la table Modèles matériels [cmdb_hardware_product_model] uniquement.

    Si l’une ou l’autre valeur est fournie seule, l’opération traite uniquement ce qui est trouvé.

    Champ de sortie target_sys_rte_eb_field

    La sortie est le sys_id et le nom de la société en core_company, ainsi que le sys_id et le nom du modèle en cmdb_model - le tout concaténé par un triple tuyau (|||).

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationHardwareModelUtil().cleanseModelAndCompany(manufacturer_in, model_in)

    Pour le fabricant ou le modèle, si aucun enregistrement correspondant n’existe, un nouvel enregistrement est créé de sorte que la déclaration inclut toujours les sys_ids et les noms des deux enregistrements (sauf si l’entrée est vide ou non valide).

    Le nom du fabricant est traité comme la transformation de Cleanse Company, puis le nom du fabricant, le nom du modèle et le numéro de modèle sont envoyés à l’API de la plateforme MakeAndModelJS .

    Tableau 4. Exemple
    Nom du fabricant Nom du modèle Numéro de modèle Résultat
    ServiceNow Incorporated SERVICENOW BC0AA8000C56 93d4ecfac0a8000b6294d71b733977fb|||ServiceNow|||ba29cb303710200044e0bfc8bcbe5d6d |||ServiceNow

    Nettoyer l'adresse IP

    À utiliser lorsqu’un champ fournit une adresse IP.

    Détails
    Table Opération de l’IP de nettoyage sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_cleanse_ip_operation]
    Champs d'entrée source_sys_rte_eb_field

    L’entrée correspond à l’adresse IP à nettoyer.

    Champ de sortie target_sys_rte_eb_field

    La sortie correspond à l’adresse IP résultante, qui peut être vide.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationNetworkUtil().cleanseIpAddress(input)

    L’adresse IP est testée à la fois pour les structures IPv4 et IPv6 ainsi que pour certaines dérivations connues (un IPv4 avec des espaces au lieu de points). Si un résultat est trouvé, il est formaté et renvoyé.

    Tableau 5. Exemples
    IP Résultats IP
    192.160.89.1 192.160.89.1
    192.160.89.1,54.21.12.311 192.160.89.1
    192 160 89 1 54 21 12 311 192.160.89.1
    192-160-89-1 192.160.89.1
    2001:0db8:0000:0000:0000 :ff00:0042:8329 2001:0db8:0000:0000:0000 :ff00:0042:8329
    camelote
    175912537 10.124.54.89
    -1
    0

    Nettoyer la version de l'IP

    À utiliser lorsque la source des données ne fournit pas de version IP ou lorsque la version IP peut ne pas être fiable.

    Détails
    Table Opération de version de l’IP de nettoyage sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_cleanse_ip_version_operation]
    Champs d'entrée source_sys_rte_eb_field

    L’entrée correspond à l’adresse IP à nettoyer.

    Champ de sortie target_sys_rte_eb_field

    La sortie est la clé de recherche cmdb_ci_ip_address.ip_version résultante (4, 6 ou vide).

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationNetworkUtil().deriveIpVersion(input)

    La valeur de l’adresse IP d’entrée est vérifiée pour vérifier si la structure IPv4 ou IPv6 est correcte, sinon le renvoi est vide. Cette fonction ne fournit aucun nettoyage IP.

    Tableau 6. Exemple
    Entrée Résultat
    192.160.89.1 4

    Nettoyer l'adresse MAC

    À utiliser lorsqu’un champ fournit une adresse MAC.

    Détails
    Table Opération MAC de nettoyage sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_cleanse_mac_operation]
    Champs d'entrée source_sys_rte_eb_field

    L’entrée correspond à l’adresse MAC à nettoyer.

    Champ de sortie target_sys_rte_eb_field

    La sortie est l’adresse MAC résultante qui peut être vide.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationNetworkUtil().cleanseMacAddress(input)

    La structure de l’adresse MAC est testée avec certaines dérivations connues (par exemple, une adresse MAC avec des espaces au lieu de deux-points). Si un résultat est trouvé, il est formaté et renvoyé.

    Tableau 7. Exemple
    Entrée Résultat
    00 0A 95 9D 68 16 00:0a :95:9d :68:16

    Nettoyer le système d'exploitation

    Permet d’extraire, de nettoyer et de formater un nom de système d’exploitation, lorsque la source fournit une valeur de système d’exploitation.

    Détails
    Table Opération du système d’exploitation de nettoyage sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_cleanse_os_operation]
    Champs d'entrée source_sys_rte_eb_field

    L’entrée correspond au nom du système d’exploitation à nettoyer.

    Champ de sortie target_sys_rte_eb_field

    La sortie correspond au nom du système d’exploitation résultant. Le nom du système d’exploitation qui en résulte est également écrit dans le champ de liste cmdb_ci_computer.os.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationOsUtil().cleanseAndInsertOs(input)

    La majeure partie du nettoyage actuel est centrée sur les valeurs du système d’exploitation Microsoft, en dehors du nettoyage courant tel que la réparation du boîtier.

    Tableau 8. Exemples
    Système d'exploitation Résultats du système d’exploitation
    Windows Server 2003 R2 Édition 64 bits Service Pack 2 Windows Server 2003 R2
    Windows 2003 Windows 2003
    Windows Vista Édition 64 bits Windows Vista
    Windows 2000 Professionnel Service Pack 4 Windows 2000 Professionnel
    Windows XP Service Pack 2-3 Windows XP
    Microsoft Windows Server 2003 R2 Édition 64 bits Service Pack 2 Windows Server 2003 R2
    Microsoft Windows 2003 Windows 2003
    Microsoft Windows Vista Édition 64 bits Windows Vista
    Microsoft Windows 2000 Professionnel Service Pack 4 Windows 2000 Professionnel
    Microsoft Windows XP Service Pack 2-3 Windows XP
    Linux Ubuntu Linux Ubuntu
    Serveur Linux Ubuntu Serveur Linux Ubuntu

    Nettoyer le numéro de série

    Permet de nettoyer et de supprimer les numéros de série non valides.

    Détails
    Table Opération du numéro de série de nettoyage sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_cleanse_serial_number_operation]
    Champs d'entrée source_sys_rte_eb_fields

    L’entrée correspond au numéro de série à nettoyer.

    Champ de sortie target_sys_rte_eb_field

    La sortie est le numéro de série résultant.

    Tableau 9. Exemples
    Numéro de série Résultats des numéros de série
    ec2aa2da-5312-aa3e-804c-c35feabeda5f ec2aa2da-5312-aa3e-804c-c35feabeda5f
    1045–1209–6738–4668–7696–2783 1045–1209–6738–4668–7696–2783

    Nettoyer le numéro de série avec une valeur alternative renvoyer si non valide

    Utilisez cette propriété pour nettoyer le numéro de série et vérifier la longueur du numéro de série nettoyé. Renvoie la valeur alternative si la longueur du numéro de série n’est pas valide.

    Détails
    Table L’entité du moteur de transformation robuste nettoie le numéro de série avec un retour de valeur alternative [

    [sn_cmdb_int_util_cle$anse_serial_number_with_alternate_value_return_if_invalid]

    Champs d'entrée source_sys_rte_eb_fields

    Entrées : numéro de série, valeur alternative

    Champ de sortie target_sys_rte_eb_field

    Sortie : numéro de série nettoyé si la longueur est valide, valeur alternative dans le cas contraire.

    Fonction de script include global.SerialNumberManager().isValid(input)

    L’opération nettoie le numéro de série et vérifie si la longueur du numéro de série nettoyé est supérieure ou égale à la valeur spécifiée dans la sn_cmdb_int_util.minimum_valid_serial_number_length propriété système. La valeur par défaut de la propriété est définie sur 7.

    Nettoyer le numéro IMEI avec une valeur alternative, retourner si elle n’est pas valide

    Permet de nettoyer le numéro IMEI et de vérifier la longueur du numéro IMEI nettoyé. Renvoie la valeur alternative si la longueur du numéro IMEI n’est pas valide.

    Détails
    Table L’entité du moteur de transformation robuste nettoie l’IMEI avec un retour de valeur alternative si inval [

    [sn_cmdb_int_util_cleanse_imei_with_alternate_value_return_if_invalid]

    Champs d'entrée source_sys_rte_eb_fields

    Entrées : numéro IMEI, valeur alternative

    Champ de sortie target_sys_rte_eb_field

    Sortie : numéro IMEI si la longueur est valide, valeur alternative dans le cas contraire.

    Fonction de script include Aucun

    L’opération nettoie le numéro IMEI et vérifie si la longueur du numéro IMEI nettoyé est égale à la valeur spécifiée dans la sn_cmdb_int_util.valid_imei_number_length propriété système. La valeur par défaut de la propriété est définie sur 15.

    Nettoyer le modèle du logiciel

    Permet de nettoyer et de créer un modèle logiciel. Vous pouvez également créer un fabricant et un modèle logiciel s’ils n’existent pas et effectuer une opération de division.

    Détails
    Table Opération du modèle logiciel de nettoyage sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_cleanse_software_model_operation]
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. Le nom du fabricant
    2. Nom du logiciel
    3. Version du logiciel (non requise)

    Si seuls le fabricant ou le nom est fourni, seules ces valeurs sont traitées et renvoyées.

    Champ de sortie target_sys_rte_eb_field

    La sortie est le sys_id et le nom de la société dans core_company, le nom du logiciel nettoyé et la version du logiciel nettoyé, tous concaténés par un triple tube (|||).

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationSoftwareModelUtil().cleanseSoftwareModel(company, model, version)

    S’il n’existe pas d’enregistrement de fabricant correspondant, un nouvel enregistrement est créé de sorte que la déclaration inclut toujours le sys_id et le nom du fabricant (si le fabricant n’est pas vide ou non valide).

    Le nom du fabricant est traité de la même manière que dans la transformation de Cleanse Company, puis le nom du fabricant est envoyé à l’API de la plateforme MakeAndModelJS.

    Le nom et la version du logiciel sont nettoyés, formatés et renvoyés. La version est supprimée du nom du logiciel le cas échéant.

    Tableau 10. Exemples
    Fabricant Nom du logiciel Version du logiciel Résultats
    Dell Inc.
    NonFabricant
    1.0.0.0
    Dell Inc. Moteur de données 1.0.17.2 b7e7d7d8c0a8016900a5d7f291acce5c|||Dell Inc.|||Moteur de données|||1.0.17.2
    IntelVérin Logiciel de test 1.0.0.1 7aad6d00c611228400f00e0f80b67d2d|||Intel|||Logiciel de test|||1.0.0.1
    Dell Inc. Logiciel de test 232 b7e7d7d8c0a8016900a5d7f291acce5c|||Dell Inc.|||Logiciel de test|||232
    Dell Inc. Logiciel de test 123.0.0.0 b7e7d7d8c0a8016900a5d7f291acce5c|||Dell Inc.|||Logiciel de test|||123.0
    Amérique en ligne Logiciel de test 1.0.0.0 0c43d035c61122750000251553f6f8e8|||L’Amérique en ligne|||Logiciel de test|||1.0
    Amérique en ligne Logiciel de test 1.0.0.0 0c43d035c61122750000251553f6f8e8|||L’Amérique en ligne|||Logiciel de test|||1.0
    vallon Minuscule 1.0.0.0 b7e7d7d8c0a8016900a5d7f291acce5c|||Dell Inc.|||Minuscules|||1.0

    Dell Corporation.

    Incorporated, Corp.

    Logiciel de test 1.0.0.0 b7e7d7d8c0a8016900a5d7f291acce5c|||Dell Inc.|||Logiciel de test|||1.0
    Microsoft

    Microsoft SQL

    Serveur 2016 Entreprise

    2.0.0 0e8b8e650a0a0b3b004f285ffbb1a4fc|||Microsoft|||Microsoft SQL Server 2016 Entreprise|||2.0
    Ordinateur Dell Moteur de données 1.0.17.2 b7e7d7d8c0a8016900a5d7f291acce5c|||Dell Inc.|||Moteur de données|||1.0.17.2
    Adobe Logiciel de test 1 b7e8b5c4c0a80169008b49e468920048|||Systèmes Adobe|||Logiciel de test|||1.0

    Créer le nom de l'instance de logiciel

    Utilisez lorsqu’un nom de matériel, un nom de logiciel et une version de logiciel sont fournis pour créer un nouveau nom d’instance logicielle.
    Détails
    Table Opération du nom de l’instance du logiciel de création sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_create_software_instance_name_operation]
    Champs d'entrée source_sys_rte_eb_fields

    Les entrées dans l’ordre sont les suivantes :

    1. Nom du matériel
    2. Nom du logiciel
    3. Version du logiciel (non requise)
    Champ de sortie target_sys_rte_eb_field

    La sortie est le nom de l’instance logicielle.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationSoftwareModelUtil().createSoftwareInstanceName(hw_name_in, sw_name_in, sw_version_in)
    Tableau 11. Exemples
    Nom du matériel Nom du logiciel Version du logiciel Résultats
    computer1 Microsoft 2.0.1 Microsoft 2.0.1-Ordinateur1
    computer2 adobe Adobe-Ordinateur2
    computer3 adobe 2.1 Adobe 2.1 - Ordinateur3
    hw2 sw3 301 SW3 301-HW2

    Dériver la classe CI à partir du modèle

    À utiliser lors du traitement d’un enregistrement d’ordinateur et qu’un modèle est fourni, mais que la classe de l’ordinateur est ambiguë dans le cas contraire. Peut être utilisé avec d’autres transformations de dérivation de classe CI.

    Détails
    Table Dériver la classe de l’opération du modèle sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_derive_class_from_model_operation]
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. Nom du modèle
    2. Nom de classe actuel
    Champ de sortie target_sys_rte_eb_field

    La sortie est le nom de classe résultant.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationClassUtil().deriveClassNameFromModelInput(model_in, class_in)

    Ne renvoie pas la valeur d’une classe qui est plus élevée dans la hiérarchie des classes (une classe parente) que la classe d’entrée fournie. Par exemple, ne renvoie pas cmdb_ci_computer si l’entrée est cmdb_ci_server. S’intéresse uniquement à la hiérarchie des cmdb_ci_computer, en passant par cmdb_ci_server (cmdb_ci_computer, cmdb_ci_server, enfants de cmdb_ci_server).

    Recherche actuellement des indicateurs de serveur, de serveur Windows et de serveur Linux dans le modèle.

    Tableau 12. Exemples
    Modèle Classe Résultats de classe
    Serveur Windows cmdb_ci_computer cmdb_ci_win_server
    Serveur Microsoft cmdb_ci_computer cmdb_ci_win_server
    Serveur Linux cmdb_ci_computer cmdb_ci_linux_server
    Serveur Microsoft cmdb_ci_server cmdb_ci_win_server
    Serveur Linux cmdb_ci_server cmdb_ci_linux_server
    Serveur Red Hat cmdb_ci_server cmdb_ci_linux_server
    Arch server cmdb_ci_server cmdb_ci_linux_server
    Serveur Centos cmdb_ci_server cmdb_ci_linux_server
    Serveur Debian cmdb_ci_server cmdb_ci_linux_server
    Serveur Fedora cmdb_ci_server cmdb_ci_linux_server
    Serveur SUSE cmdb_ci_server cmdb_ci_linux_server
    Serveur Oracle cmdb_ci_server cmdb_ci_linux_server
    Serveur Rhel cmdb_ci_server cmdb_ci_linux_server
    Serveur Ubuntu cmdb_ci_server cmdb_ci_linux_server
    Courrier indésirable
    cmdb_ci_server cmdb_ci_server
    Serveur indésirable cmdb_ci_computer cmdb_ci_server
    Courrier indésirable cmdb_ci_computer cmdb_ci_computer

    Dériver la classe CI à partir de l'identificateur de classe native

    À utiliser lors du traitement d’un enregistrement d’ordinateur et un indicateur de classe native est fourni, mais la classe de l’ordinateur est ambiguë dans le cas contraire. Peut être utilisé avec d’autres transformations de dérivation de classe CI.

    Détails
    Table Dériver la classe de l’opération de la valeur native sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_derive_class_from_native_value_operation]
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. L’identificateur de classe natif
    2. Nom de classe actuel
    Champ de sortie target_sys_rte_eb_field

    La sortie est le nom de classe résultant.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationClassUtil().deriveClassNameFromNativeValue(native_id_in, class_in)

    Ne renvoie pas la valeur d’une classe qui est plus élevée dans la hiérarchie des classes (une classe parente) que la classe d’entrée fournie. Par exemple, ne renvoie pas cmdb_ci_computer si l’entrée est cmdb_ci_server. S’intéresse uniquement à la hiérarchie des cmdb_ci_computer, en passant par cmdb_ci_server (cmdb_ci_computer, cmdb_ci_server, enfants de cmdb_ci_server).

    Recherche actuellement les indicateurs Serveur, Serveur Windows et Serveur Linux dans l’identificateur natif.

    Tableau 13. Exemples
    Classe native Classe Résultats de classe
    Serveur Windows cmdb_ci_computer cmdb_ci_win_server
    Serveur Microsoft cmdb_ci_computer cmdb_ci_win_server
    Serveur Linux cmdb_ci_computer cmdb_ci_linux_server
    Serveur Microsoft cmdb_ci_server cmdb_ci_win_server
    Serveur Linux cmdb_ci_server cmdb_ci_linux_server
    Serveur Red Hat cmdb_ci_server cmdb_ci_linux_server
    Arch server cmdb_ci_server cmdb_ci_linux_server
    Serveur Centos cmdb_ci_server cmdb_ci_linux_server
    Serveur Debian cmdb_ci_server cmdb_ci_linux_server
    Serveur Fedora cmdb_ci_server cmdb_ci_linux_server
    Serveur SUSE cmdb_ci_server cmdb_ci_linux_server
    Serveur Oracle cmdb_ci_server cmdb_ci_linux_server
    Serveur Rhel cmdb_ci_server cmdb_ci_linux_server
    Serveur Ubuntu cmdb_ci_server cmdb_ci_linux_server
    Courrier indésirable
    cmdb_ci_server cmdb_ci_server
    Serveur indésirable cmdb_ci_computer cmdb_ci_server
    Courrier indésirable cmdb_ci_computer cmdb_ci_computer

    Dériver la classe CI à partir du système d'exploitation

    À utiliser lors du traitement d’un enregistrement d’ordinateur et qu’un système d’exploitation est fourni, mais que la classe de l’ordinateur est ambiguë dans le cas contraire. Peut être utilisé avec d’autres transformations de dérivation de classe CI.

    Détails
    Table Dériver la classe de l’opération du système d’exploitation sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_derive_class_from_os_operation]
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. Nom du système d’exploitation
    2. Nom de classe actuel
    Champ de sortie target_sys_rte_eb_field

    La sortie est le nom de classe résultant.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationClassUtil().deriveClassNameFromOsName(os_in, class_in)

    Ne renvoie pas la valeur d’une classe qui est plus élevée dans la hiérarchie des classes (une classe parente) que la classe d’entrée fournie. Par exemple, ne renvoie pas cmdb_ci_computer si l’entrée est cmdb_ci_server. S’intéresse uniquement à la hiérarchie des cmdb_ci_computer, en passant par cmdb_ci_server (cmdb_ci_computer, cmdb_ci_server, enfants de cmdb_ci_server).

    Recherche actuellement des indicateurs Serveur, Serveur Windows et Serveur Linux dans le nom du système d’exploitation.

    Tableau 14. Exemples
    Système d'exploitation Classe Résultats de classe
    Serveur Windows cmdb_ci_computer cmdb_ci_win_server
    Serveur Microsoft cmdb_ci_computer cmdb_ci_win_server
    Serveur Linux cmdb_ci_computer cmdb_ci_linux_server
    Serveur Microsoft cmdb_ci_server cmdb_ci_win_server
    Serveur Linux cmdb_ci_server cmdb_ci_linux_server
    Serveur Red Hat cmdb_ci_server cmdb_ci_linux_server
    Arch server cmdb_ci_server cmdb_ci_linux_server
    Serveur Centos cmdb_ci_server cmdb_ci_linux_server
    Serveur Debian cmdb_ci_server cmdb_ci_linux_server
    Serveur Fedora cmdb_ci_server cmdb_ci_linux_server
    Serveur SUSE cmdb_ci_server cmdb_ci_linux_server
    Serveur Oracle cmdb_ci_server cmdb_ci_linux_server
    Serveur Rhel cmdb_ci_server cmdb_ci_linux_server
    Serveur Ubuntu cmdb_ci_server cmdb_ci_linux_server
    Courrier indésirable
    cmdb_ci_server cmdb_ci_server
    Serveur indésirable cmdb_ci_computer cmdb_ci_server
    Courrier indésirable cmdb_ci_computer cmdb_ci_computer

    Dériver le modèle virtuel à partir du modèle du matériel

    À utiliser lors du traitement d’un enregistrement d’ordinateur qui peut être virtuel, un modèle matériel est fourni et l’état virtuel est ambigu. Peut être utilisé avec d’autres dérivations virtuelles des transformations.

    Détails
    Table Dériver le virtuel de l’opération du modèle sur l’entité du moteur de transformation robuste [sn_cmdb_int_util_derive_virtual_from_model_operation]
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. Nom du modèle de matériel
    2. La valeur actuelle du marqueur virtuel
    Champ de sortie target_sys_rte_eb_field

    La sortie est le marqueur virtuel obtenu (vrai/faux). Si le marqueur virtuel actuel est « vrai », le résultat est vrai. Sinon, le résultat est 'vrai' ou 'faux'.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationVirtualDetectionUtil().detectVirtualFromModelName(model_in, is_virtual_in)

    Recherche des indicateurs dans le nom du modèle pour un appareil virtuel (VMware).

    Tableau 15. Exemples
    Modèle de matériel Marqueur virtuel Résultats de marqueurs virtuels
    ThinkPad VRAI VRAI
    ThinkPad faux faux
    ThinkPad faux
    VMware Inc VRAI VRAI
    VRAI VRAI
    faux faux
    faux

    Dériver un indicateur virtuel à partir d'un indicateur natif

    À utiliser lors du traitement d’un enregistrement d’ordinateur qui peut être virtuel, un indicateur virtuel est fourni par la source et l’état virtuel est ambigu. Peut être utilisé avec d’autres dérivations virtuelles des transformations.

    Détails
    Table sn_cmdb_int_util_derive_virtual_from_native_value_operation
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. L’indicateur natif
    2. La valeur actuelle du marqueur virtuel
    Champ de sortie target_sys_rte_eb_field

    La sortie est le marqueur virtuel obtenu (vrai/faux). Si le marqueur virtuel actuel est « vrai », le résultat est vrai. Sinon, le résultat est 'vrai' ou 'faux'.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationVirtualDetectionUtil().detectVirtualFromNativeIdentifier(native_in, is_virtual_in)

    Teste l’indicateur natif par rapport à une liste de valeurs courantes et recherche un indicateur booléen « vrai ».

    Tableau 16. Exemples
    Valeur virtuelle native Marqueur virtuel Résultats de marqueurs virtuels
    virtuel faux VRAI
    virtuel VRAI
    virtuel VRAI VRAI
    o faux VRAI
    o VRAI
    o VRAI VRAI
    yes faux VRAI
    yes VRAI
    yes VRAI VRAI
    VRAI Faux VRAI
    VRAI VRAI
    VRAI VRAI VRAI
    t faux VRAI
    t VRAI
    t VRAI VRAI
    autre faux faux
    autre faux
    autre VRAI VRAI
    Non virtuel faux faux
    Non virtuel faux
    Non virtuel VRAI VRAI
    faux faux
    faux
    VRAI VRAI

    Dériver un numéro virtuel à partir du numéro de série

    À utiliser lors du traitement d’un enregistrement d’ordinateur qui peut être virtuel, un numéro de série est fourni par la source et l’état virtuel est ambigu. Peut être utilisé avec d’autres dérivations virtuelles des transformations.

    Détails
    Table sn_cmdb_int_util_derive_virtual_from_serial_number_operation
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. Numéro de série
    2. La valeur actuelle du marqueur virtuel
    Champ de sortie target_sys_rte_eb_field

    La sortie est le marqueur virtuel obtenu (vrai/faux). Si le marqueur virtuel actuel est « vrai », le résultat est vrai. Sinon, le résultat est 'vrai' ou 'faux'.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationVirtualDetectionUtil().detectVirtualFromSerialNumber (serial_in, is_virtual_in)

    Recherche des indicateurs dans le numéro de série d’un appareil virtuel (VMware).

    Tableau 17. Exemples
    Numéro de série Marqueur virtuel Résultats de marqueurs virtuels
    123 VRAI VRAI
    123 faux faux
    123 faux
    vmware-123 VRAI VRAI
    VRAI VRAI
    faux faux
    faux

    Extraire et mettre à l'échelle par unités

    À utiliser lorsque la source a des valeurs numériques qui doivent être mises à l’échelle et une valeur numérique avec une entrée telle que 2 048 Mo. La source ne fournit pas toujours les unités, de sorte qu’il peut être nécessaire de calculer ou de deviner les unités fournies. Les unités cibles dépendent du champ cible dans la CMDB. S’il n’est pas spécifié, le champ de décimale est défini sur 2 par défaut.

    Remarque :
    Ce champ est sensible à la casse.
    Détails
    Table sn_cmdb_int_util_extract_and_scale_by_units_operation
    Champs d'entrée source_sys_rte_eb_fields
    Champ de sortie target_sys_rte_eb_field
    Fonction de script include sn_cmdb_int_util.CmdbIntegrationExtractScaleUnitUtil().extractAndScaleUnits(input,defaultUnit,outputUnit,decimalPlaces)
    Tableau 18. Exemples
    Valeur d'entrée Unité par défaut Unité de sortie Résultat
    2048Mo Mo GB 2 Go
    17179869184 B GB 16 Go

    Première valeur non nulle

    À utiliser lorsque vous avez une liste de champs fournissant des informations similaires qui doivent être mappées sur un seul champ et que vous souhaitez classer l’ordre dans lequel ils peuvent fournir ces valeurs.

    Par exemple, en interne dans SolarWinds, il existe une hiérarchie de tables qui sont jointes. Dans un exemple, le nom d’un ordinateur peut provenir de la table enfant most ou de l’une de ces tables parents, mais chacune d’entre elles est un champ distinct dans l’extraction. En commençant par la table la plus spécifique, la première instance d’une valeur de nom est recherchée dans les valeurs.

    Détails
    Table sn_cmdb_int_util_first_non_null_operation
    Champs d'entrée source_sys_rte_eb_fields

    L’entrée est une liste de champs de n’importe quelle longueur.

    Champ de sortie target_sys_rte_eb_field

    La sortie est la valeur du premier champ de la liste qui n’a pas de valeur nulle (ou vide).

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationFirstNonNullValueUtil().firstNonNullValue(batch[i])
    Tableau 19. Exemple
    Champ 1 Champ 2 Champ 3 Résultat
    Foo foo2 Foo

    Nom du processus, domaine, FQDN, ensemble DNS

    À utiliser lorsque la source fournit un nom, un domaine, des informations FQDN ou DNS. Ne peut être utilisé que pour un sous-ensemble de ceux-ci (si, par exemple, la source ne fournit que le nom et le domaine). Dans le cas où une source ne fournit que des champs situés plus bas dans la liste d’entrée (FQDN), l’include de script CmdbIntegrationHardwareNameUtil peut être appelé à partir d’une opération de script pour minimiser la nécessité de créer des champs factices vides.

    Détails
    Table sn_cmdb_int_util_process_name_set_operation
    Champs d'entrée source_sys_rte_eb_fields
    Prend jusqu’à quatre champs d’entrée (les champs supplémentaires sont ignorés), dans l’ordre suivant :
    1. Nom
    2. Domaine
    3. FQDN
    4. DNS

    Vous n’êtes pas obligé de fournir les quatre valeurs d’entrée, mais vous devez les fournir dans l’ordre spécifié. Si, par exemple, vous souhaitez uniquement nettoyer le domaine, vous devez fournir un attribut de nom, même s’il est vide.

    Champ de sortie target_sys_rte_eb_field

    La sortie est un ensemble concaténé de valeurs dans le même ordre, à l’aide d’une barre verticale triple (|||) : {name}|||{domaine}|||{fqdn}|||{DNS}

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationHardwareNameUtil().processNameDomainFqdnDnsSet(name, domain, fqdn, dns)

    Le nom de domaine complet et le nom de domaine DNS sont d’abord traités pour voir si leurs formats sont corrects. Le nom de domaine complet a une regex de détection supplémentaire qu’il doit transmettre (via les propriétés) : glide.discovery.fqdn.regex – par défaut : ^([^.] +)\\. ((?:[^.] +\\.) +[^.] +)$

    Les valeurs possibles de nom et de domaine sont extraites si possible. Lorsque le nom et le domaine sont traités, s’il n’y a pas de nom de domaine complet, une valeur est générée si possible. Une valeur de nom résultante est également modifiée à l’aide des marqueurs de détection suivants :
    1. glide.discovery.hostname.case – par défaut : aucun changement. Peut être défini sur « Minuscules », « Majuscules », « Aucun changement »
    2. glide.discovery.hostname.include_domain : par défaut : false. Si « vrai », le domaine est ajouté à la valeur de nom finale
    Tableau 20. Exemples
    Nom Domaine FQDN DNS Résultats
    monNom other.net otherName.other.net mycomp.servicenow.com monNom|||other.net|||otherName.other.net|||mycomp.servicenow.com
    Na other.net otherName.other.net mycomp.servicenow.com autreNom|||other.net|||otherName.other.net|||mycomp.servicenow.com
    servicenow.com |||servicenow.com||||||
    name.servicenow.com nom|||servicenow.com|||name.servicenow.com|||name.servicenow.com
    name.servicenow.com nom|||servicenow.com|||name.servicenow.com|||
    name.servicenow.com nom|||servicenow.com|||name.servicenow.com|||
    name servicenow.com nom|||servicenow.com|||name.servicenow.com|||

    FQDN du processus

    À utiliser lorsque la source fournit une valeur FQDN présumée, mais aucun autre champ de nommage tel que le nom, le domaine ou le DNS.

    Détails
    Table sn_cmdb_int_util_process_fqdn_operation
    Champs d'entrée source_sys_rte_eb_field

    L’entrée est un champ unique contenant un nom de domaine complet.

    Champ de sortie target_sys_rte_eb_field

    La sortie est un ensemble concaténé de valeurs dans le même ordre à l’aide d’un triple tube (|||) : {name}|||{domaine}|||{fqdn}|||{DNS}

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationHardwareNameUtil().processNameDomainFqdnDnsSet('’, '’, fqdn, '’)

    Le traitement suit la même logique que la transformation « Nom du processus, Domaine, FQDN, ensemble DNS », sauf que seul le nom de domaine complet est utilisé comme entrée.

    Tableau 21. Exemple
    Entrée Résultat
    mycomputer.servicenow.com Ordinateur|||servicenow.com|||mycomputer.servicenow.com|||

    Unité d'échelle

    À utiliser lorsque la source possède des entrées numériques qui doivent être mises à l’échelle. La source ne fournit pas toujours les unités actuelles, de sorte qu’il peut être nécessaire de calculer ou de deviner les unités fournies. Les unités cibles dépendent du champ ciblé dans la CMDB.

    Détails
    Table sn_cmdb_int_util_scale_unit_operation
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. La valeur d’entrée
    2. Les unités actuelles
    3. Les unités cibles
    Champ de sortie target_sys_rte_eb_field

    La sortie est la valeur d’entrée mise à l’échelle des unités actuelles aux unités cibles. Si aucune unité n’est trouvée pour les unités actuelles, la valeur d’entrée est renvoyée. Si aucune unité actuelle ou cible n’est trouvée, l’entrée est renvoyée en tant que sortie.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationScaleUnitUtil().scaleUnits(input_value, input_unit, output_unit)
    Tableau 22. Exemple
    Entrée Résultat
    • Champ d’entrée 1:1
    • Champ d’entrée 2 : Go
    • Champ d’entrée 3 : Mo
    1 024

    Recherche d'ID de groupe de logiciels

    À utiliser lorsqu’une source, telle que Jamf, ne fournit pas l’éditeur du logiciel, mais fournit un ID de bundle de logiciels Mac. Recherche d’ID de groupe de logiciels Recherche d’enregistrements dans la table Recherche d’ID de groupe [sn-cmdb_int_util_bundleid_lookup] par bundle_id. S’il existe un enregistrement avec l’bundle_id spécifié, il extrait l’éditeur de logiciel respectif. Sinon, cela crée un nouvel enregistrement qui sera interrogé la prochaine fois que la source de données Rechercher les ID de bundle de logiciels Mac s’exécute.

    Détails
    Table sn_cmdb_int_util_software_bundle_id_lookup_operation
    Champs d'entrée
    • source_sys_rte_eb_field
    • Identifiant de groupe
    Champ de sortie target_sys_rte_eb_field

    La sortie est le nom de l’artiste, le nom de la piste et le nom du vendeur résultants, tous concaténés par une triple barre verticale (|||), ou une chaîne vide si aucune correspondance n’est trouvée.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationSoftwareBundleIdLookup. lookupSoftware(bundleId)
    Tableau 23. Exemple
    Entrée Résultat
    Champ d’entrée 1 : com.microsoft.Word Microsoft Corporation|||Microsoft Word||| Microsoft Corporation

    Recherche d'utilisateur

    Utilisez cette propriété pour rechercher un utilisateur dans la table Utilisateur [sys_user] par nom d’utilisateur ou adresse e-mail, en essayant de le faire correspondre dans l’ordre suivant :
    1. Nom d’utilisateur correspondant à l’attribut user_name .
    2. E-mail correspondant à l’attribut email.
    3. Si rien ne correspond, il renvoie vide.
    Détails
    Table sn_cmdb_int_util_user_lookup_operation
    Champs d'entrée source_sys_rte_eb_fields
    Les entrées dans l’ordre sont les suivantes :
    1. Noms d'utilisateur
    2. E-mail (facultatif)
    Champ de sortie target_sys_rte_eb_field

    sysId du sys_user.

    Fonction de script include sn_cmdb_int_util.CmdbIntegrationUserLookup. lookupUser(username, email)
    Tableau 24. Exemples
    Entrée Résultat
    Champ d’entrée 1 : abel.tuter 62826bf03710200044e0bfc8bcbe5df1
    • Champ d’entrée 1 : atuter
    • Champ d’entrée 2 : abel.tuter@example.com
    62826bf03710200044e0bfc8bcbe5df1