Áú»¢¶Ä²©

This is a translation of the original English documentation page. Help us make it better.

3 ¶Ù¨¦³¦´Ç³Ü±¹±ð°ù³Ù±ð de bas niveau

Aper?u

La d¨¦couverte de bas niveau permet de cr¨¦er automatiquement des ¨¦l¨¦ments, des d¨¦clencheurs et des graphiques pour diff¨¦rentes entit¨¦s sur un ordinateur. Par exemple, Áú»¢¶Ä²© peut d¨¦marrer automatiquement la surveillance des syst¨¨mes de fichiers ou des interfaces r¨¦seaux sur votre ordinateur, sans qu'il soit n¨¦cessaire de cr¨¦er manuellement des ¨¦l¨¦ments pour chaque syst¨¨me de fichiers ou interface r¨¦seau. De plus, il est possible de configurer Áú»¢¶Ä²© pour qu'il supprime automatiquement les entit¨¦s inutiles en fonction des r¨¦sultats r¨¦els de la d¨¦couverte effectu¨¦e p¨¦riodiquement.

Un utilisateur peut d¨¦finir ses propres types de d¨¦couverte, ¨¤ condition de suivre un protocole JSON particulier.

L'architecture g¨¦n¨¦rale du processus de d¨¦couverte est la suivante.

Tout d'abord, un utilisateur cr¨¦e une r¨¨gle de d¨¦couverte dans la colonne "Configuration" ¡ú "²Ñ´Ç»å¨¨±ô±ðs" ¡ú "¶Ù¨¦³¦´Ç³Ü±¹±ð°ù³Ù±ð". Une r¨¨gle de d¨¦couverte consiste en (1) un ¨¦l¨¦ment qui d¨¦couvre les entit¨¦s n¨¦cessaires (par exemple, des syst¨¨mes de fichiers ou des interfaces r¨¦seau) et (2) des prototypes d'¨¦l¨¦ments, de d¨¦clencheurs et de graphiques qui doivent ¨ºtre cr¨¦¨¦s en fonction de la valeur de cet ¨¦l¨¦ment.

Un ¨¦l¨¦ment qui d¨¦couvre les entit¨¦s n¨¦cessaires est comme un ¨¦l¨¦ment standard vu ailleurs : le serveur demande ¨¤ un agent Áú»¢¶Ä²© (ou quel que soit le type d'¨¦l¨¦ment d¨¦fini) une valeur de cet ¨¦l¨¦ment, l'agent r¨¦pond avec une valeur textuelle. La diff¨¦rence est que la valeur avec laquelle l'agent r¨¦pond doit contenir une liste d'entit¨¦s d¨¦couvertes dans un format JSON sp¨¦cifique. Bien que les d¨¦tails de ce format ne soient importants que pour les d¨¦veloppeurs de v¨¦rifications de d¨¦couverte personnalis¨¦es, il est n¨¦cessaire de savoir que la valeur renvoy¨¦e contient une liste de paires macro ¡ú valeur. Par exemple, l'¨¦l¨¦ment "net.if.discovery" peut renvoyer deux paires : "{#IFNAME}" ¡ú "lo" et "{#IFNAME}" ¡ú "eth0".

Ces macros sont utilis¨¦es dans les noms, les cl¨¦s et les autres champs prototypes o¨´ elles sont ensuite remplac¨¦es par les valeurs re?ues pour cr¨¦er des ¨¦l¨¦ments r¨¦els, des d¨¦clencheurs, des graphiques ou m¨ºme des h?tes pour chaque entit¨¦ d¨¦couverte. Consultez la liste compl¨¨te des?options?d'utilisation des macros LLD.

Lorsque le serveur re?oit une valeur pour un ¨¦l¨¦ment de d¨¦couverte, il examine les paires macro ¡ú valeur et g¨¦n¨¨re pour chaque paire des ¨¦l¨¦ments r¨¦els, des d¨¦clencheurs et des graphiques, en fonction de leurs prototypes. Dans l'exemple avec "net.if.discovery" ci-dessus, le serveur g¨¦n¨¦rerait un ensemble d'¨¦l¨¦ments, de d¨¦clencheurs et de graphiques pour l'interface loopback "lo" et un autre ensemble pour l'interface "eth0".

Notez que depuis ** Áú»¢¶Ä²© 4.2 **, le format du JSON renvoy¨¦ par les r¨¨gles de d¨¦couverte de bas niveau a ¨¦t¨¦ modifi¨¦. Il n'est plus pr¨¦vu que le JSON contienne l'objet "data". La d¨¦couverte de bas niveau acceptera d¨¦sormais un JSON normal contenant un tableau, afin de prendre en charge de nouvelles fonctionnalit¨¦s telles que le pr¨¦traitement de la valeur d'¨¦l¨¦ment et les chemins personnalis¨¦s vers les valeurs de macro de d¨¦couverte de bas niveau dans un document JSON.

Les cl¨¦s de d¨¦couverte int¨¦gr¨¦es ont ¨¦t¨¦ mises ¨¤ jour pour renvoyer un tableau de lignes LLD ¨¤ la racine du document JSON. Áú»¢¶Ä²© extraira automatiquement une macro et une valeur si un champ de tableau utilise la syntaxe {#MACRO} comme cl¨¦. Toute nouvelle v¨¦rification de d¨¦couverte native utilisera la nouvelle syntaxe sans les ¨¦l¨¦ments "data". Lors du traitement d'une valeur de d¨¦couverte de bas niveau, la racine est d'abord localis¨¦e (tableau ¨¤ $. ou $.data).

Bien que l'¨¦l¨¦ment "data" ait ¨¦t¨¦ supprim¨¦ de tous les ¨¦l¨¦ments natifs li¨¦s ¨¤ la d¨¦couverte, pour des raisons de r¨¦trocompatibilit¨¦, Áú»¢¶Ä²© acceptera toujours la notation JSON avec un ¨¦l¨¦ment "data", bien que son utilisation soit d¨¦conseill¨¦e. Si le JSON contient un objet avec un seul ¨¦l¨¦ment de tableau "data", il extraira automatiquement le contenu de l'¨¦l¨¦ment en utilisant JSONPath $.data. La d¨¦couverte de bas niveau accepte d¨¦sormais les macros LLD facultatives d¨¦finies par l'utilisateur avec un chemin personnalis¨¦ sp¨¦cifi¨¦ dans la syntaxe JSONPath.

Suite aux changements ci-dessus, les nouveaux agents ne pourront plus fonctionner avec un ancien serveur Áú»¢¶Ä²©.

Voir aussi :?Entit¨¦s d¨¦couvertes

Configuration de la d¨¦couverte de bas niveau

Nous allons illustrer la d¨¦couverte de bas niveau en nous basant sur un exemple de d¨¦couverte de syst¨¨me de fichiers.

Pour configurer la d¨¦couverte, proc¨¦dez comme suit :

  • Aller dans : Configuration ¡ú ²Ñ´Ç»å¨¨±ô±ðs ou H?tes
  • Cliquez sur ¶Ù¨¦³¦´Ç³Ü±¹±ð°ù³Ù±ð dans la ligne d'un mod¨¨le/h?te appropri¨¦.

  • Cliquez sur?Cr¨¦er une r¨¨gle de d¨¦couverte?dans le coin sup¨¦rieur droit de l'¨¦cran.
  • Remplissez le formulaire de r¨¨gle de d¨¦couverte avec les d¨¦tails requis

R¨¨gle de d¨¦couverte

Le formulaire de r¨¨gle de d¨¦couverte contient cinq onglets, repr¨¦sentant, de gauche ¨¤ droite, le flux de donn¨¦es lors de la d¨¦couverte :

  • R¨¨gle de d¨¦couverte - sp¨¦cifie, surtout, l'¨¦l¨¦ment int¨¦gr¨¦ ou le script personnalis¨¦ pour r¨¦cup¨¦rer les donn¨¦es de d¨¦couverte
  • ±Ê°ù¨¦³Ù°ù²¹¾±³Ù±ð³¾±ð²Ô³Ù - applique un pr¨¦traitement aux donn¨¦es d¨¦couvertes
  • Macros LLD - permet d'extraire certaines valeurs de macro ¨¤ utiliser dans les ¨¦l¨¦ments d¨¦couverts, les d¨¦clencheurs, etc.
  • Filtres - permet de filtrer les valeurs d¨¦couvertes
  • Surcharge - permet de modifier des ¨¦l¨¦ments, des d¨¦clencheurs, des graphiques ou des prototypes d'h?te lors de l'application ¨¤ des objets d¨¦couverts sp¨¦cifiques

L'onglet R¨¨gle de d¨¦couverte contient la cl¨¦ d'¨¦l¨¦ment ¨¤ utiliser pour la d¨¦couverte (ainsi que certains attributs g¨¦n¨¦raux de la r¨¨gle de d¨¦couverte) :

Tous les champs de saisie obligatoires sont marqu¨¦s d'un ast¨¦risque rouge.

±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð Description
Nom Nom de la r¨¨gle de d¨¦couverte.
Type Le type de v¨¦rification pour effectuer la d¨¦couverte
Dans cet exemple, nous utilisons une cl¨¦ d'¨¦l¨¦ment agent Áú»¢¶Ä²©.
La r¨¨gle de d¨¦couverte peut ¨¦²µ²¹±ôement ¨ºtre un ¨¦l¨¦ment d¨¦pendant. Elle ne peut pas d¨¦pendre d'une autre r¨¨gle de d¨¦couverte. Pour un ¨¦l¨¦ment d¨¦pendant, s¨¦lectionnez le type respectif (?l¨¦ment d¨¦pendant) et sp¨¦cifiez l'¨¦l¨¦ment ma?tre dans le champ '?l¨¦ment maitre'. L'¨¦l¨¦ment ma?tre doit exister.
°ä±ô¨¦ Saisir la cl¨¦ de l'¨¦l¨¦ment de d¨¦couverte (jusqu'¨¤ 2 048 caract¨¨res).
Par exemple, vous pouvez utiliser la cl¨¦ d'¨¦l¨¦ment int¨¦gr¨¦e "vfs.fs.discovery" pour renvoyer un JSON avec la liste des syst¨¨mes de fichiers pr¨¦sents sur l'ordinateur et leur types.
Notez qu'une autre option pour la d¨¦couverte du syst¨¨me de fichiers utilise les r¨¦sultats de la d¨¦couverte par la cl¨¦ d'agent "vfs.fs.get", prise en charge depuis Áú»¢¶Ä²© 4.4.5 (voir l'exemple).
Intervalle d'actualisation Ce champ sp¨¦cifie la fr¨¦quence ¨¤ laquelle Áú»¢¶Ä²© effectue la d¨¦couverte. Au d¨¦but, lorsque vous configurez simplement la d¨¦couverte de syst¨¨me de fichiers, vous pouvez d¨¦finir un intervalle r¨¦duit, mais une fois que vous savez que cela fonctionne, vous pouvez le d¨¦finir sur 30 minutes ou plus, car les syst¨¨mes de fichiers ne changent g¨¦n¨¦ralement pas tr¨¨s souvent.
Les suffixes temporels sont support¨¦s, ex : 30s, 1m, 2h, 1d, depuis Áú»¢¶Ä²© 3.4.0.
Les macros utilisateurs sont support¨¦es, depuis Áú»¢¶Ä²© 3.4.0.
Remarque : L'intervalle de mise ¨¤ jour ne peut ¨ºtre d¨¦fini sur '0' que s'il existe des intervalles personnalis¨¦s avec une valeur diff¨¦rente de z¨¦ro. S'il est d¨¦fini sur '0' et qu'un intervalle personnalis¨¦ (flexible ou planifi¨¦) existe avec une valeur diff¨¦rente de z¨¦ro, l'¨¦l¨¦ment sera interrog¨¦ pendant la dur¨¦e de l'intervalle personnalis¨¦.
Notez que pour une r¨¨gle de d¨¦couverte existante, la d¨¦couverte peut ¨ºtre effectu¨¦e imm¨¦diatement en appuyant sur le bouton V¨¦rifier maintenant.
Intervalle personnalis¨¦ Vous pouvez cr¨¦er des r¨¨gles personnalis¨¦es pour v¨¦rifier l'¨¦l¨¦ment :
Flexible - cr¨¦er une exception ¨¤ l'intervalle d'actualisation (intervalle avec une fr¨¦quence diff¨¦rente)
Planification - cr¨¦ez un calendrier d'interrogation personnalis¨¦.
Pour plus d'informations, voir Intervalles personnalis¨¦s. La planification est support¨¦e depuis Áú»¢¶Ä²© 3.0.0.
P¨¦riode de conservation des ressources perdues Ce champ vous permet de sp¨¦cifier la dur¨¦e pendant laquelle l'entit¨¦ d¨¦couverte sera conserv¨¦e (elle ne sera pas supprim¨¦e) une fois que son statut de d¨¦couverte deviendra "Plus d¨¦couvert" (entre 1 heure et 25 ans ; ou "0").
Les suffixes temporels sont support¨¦s, ex : 2h, 1d, depuis Áú»¢¶Ä²© 3.4.0.
Les macros utilisateurs sont support¨¦es, depuis Áú»¢¶Ä²© 3.4.0.
Remarque : Si la valeur est "0", les entit¨¦s seront imm¨¦diatement supprim¨¦es. L'utilisation de "0" n'est pas recommand¨¦e, car une modification incorrecte du filtre risque de se retrouver dans l'entit¨¦ en cours de suppression avec toutes les donn¨¦es historiques.
Description Entrez une description.
´¡³¦³Ù¾±±¹¨¦ Si coch¨¦, la r¨¨gle sera trait¨¦e.

L'historique des r¨¨gles de d¨¦couverte n'est pas conserv¨¦.

±Ê°ù¨¦³Ù°ù²¹¾±³Ù±ð³¾±ð²Ô³Ù

L'onglet ±Ê°ù¨¦³Ù°ù²¹¾±³Ù±ð³¾±ð²Ô³Ù permet de d¨¦finir des r¨¨gles de transformation ¨¤ appliquer au r¨¦sultat de la d¨¦couverte. Une ou plusieurs transformations sont possibles dans cette ¨¦tape. Les transformations sont ex¨¦cut¨¦es dans l'ordre dans lequel elles sont d¨¦finies. Tout le pr¨¦traitement est effectu¨¦ par le serveur Áú»¢¶Ä²©.

Voir ¨¦²µ²¹±ôement :

Type
Transformation Description
Texte
Expression r¨¦guli¨¨re Faire correspondre la valeur re?ue ¨¤ l'expression r¨¦guli¨¨re <motif> et remplacez la valeur par la <sortie> extraite. L'expression r¨¦guli¨¨re prend en charge l'extraction d'un maximum de 10 groupes captur¨¦s avec la s¨¦quence \N.
±Ê²¹°ù²¹³¾¨¨³Ù°ù±ðs :
motif - expression r¨¦guli¨¨re
sortie - mod¨¨le de formatage de sortie. Une s¨¦quence d'¨¦chappement \N (o¨´ N=1¡­9) est remplac¨¦e par le Ni¨¨me groupe correspondant. Une s¨¦quence d'¨¦chappement \0 est remplac¨¦e par le texte correspondant.
Si vous cochez la case Personnalis¨¦ en cas d'¨¦chec, il est possible de sp¨¦cifier des options de gestion des erreurs personnalis¨¦es : soit pour ignorer la valeur, soit pour d¨¦finir une valeur sp¨¦cifi¨¦e, soit pour d¨¦finir un message d'erreur sp¨¦cifi¨¦.
Remplacer Trouver la cha?ne de recherche et la remplacer par une autre (ou rien). Toutes les occurrences de la cha?ne de recherche seront remplac¨¦es.
±Ê²¹°ù²¹³¾¨¨³Ù°ù±ðs :
cha?ne recherch¨¦e - la cha?ne ¨¤ rechercher et ¨¤ remplacer, sensible ¨¤ la casse (obligatoire)
remplacement - la cha?ne par laquelle remplacer la cha?ne de recherche. La cha?ne de remplacement peut ¨¦²µ²¹±ôement ¨ºtre vide, ce qui permet de supprimer la cha?ne de recherche lorsqu'elle est trouv¨¦e.
Il est possible d'utiliser des s¨¦quences d'¨¦chappement pour rechercher ou remplacer les sauts de ligne, les retours chariot, les tabulations et les espaces "\n \r \t \s" ; la barre oblique inverse peut ¨ºtre ¨¦chapp¨¦e sous la forme "\\" et les s¨¦quences d'¨¦chappement peuvent ¨ºtre ¨¦chapp¨¦es sous la forme "\\n". L'¨¦chappement des sauts de ligne, des retours chariot et des tabulations est automatiquement effectu¨¦ lors de la d¨¦couverte de bas niveau.
Pris en charge depuis 5.0.0.
Donn¨¦es structur¨¦es
JSONPath Extraire une valeur ou un fragment de donn¨¦es JSON ¨¤ l'aide de la fonctionnalit¨¦ JSONPath.
Si vous cochez la case Personnalis¨¦ en cas d'¨¦chec, l'¨¦l¨¦ment ne deviendra pas non pris en charge en cas d'¨¦chec de l'¨¦tape de pr¨¦traitement et il est possible de sp¨¦cifier des options de gestion des erreurs personnalis¨¦es : soit pour ignorer la valeur, soit pour d¨¦finir une valeur sp¨¦cifi¨¦e, soit pour d¨¦finir un message d'erreur sp¨¦cifi¨¦ .
XPath XML Extraire une valeur ou un fragment de donn¨¦es XML ¨¤ l'aide de la fonctionnalit¨¦ XPath.
Pour que cette option fonctionne, le serveur Áú»¢¶Ä²© doit ¨ºtre compil¨¦ avec le support libxml.
Exemples :
number(/document/item/value) extraira 10 de <document><item><value>10</value></item></document>
number(/document/item/@attribute) extraira 10 de<document><item attribute="10"></item></document>
/document/item extraira <item><value>10</value></item> de <document><item><value>10</value></item></document>
Notez que les espaces de noms ne sont pas pris en charge.
Pris en charge depuis la version 4.4.0.
Si vous cochez la case Personnalis¨¦ en cas d'¨¦chec, il est possible de sp¨¦cifier des options de gestion des erreurs personnalis¨¦es : soit pour ignorer la valeur, soit pour d¨¦finir une valeur sp¨¦cifi¨¦e, soit pour d¨¦finir un message d'erreur sp¨¦cifi¨¦.
CSV vers JSON Convertir les donn¨¦es du fichier CSV au format JSON.
Pour plus d'informations, voir : ±Ê°ù¨¦³Ù°ù²¹¾±³Ù±ð³¾±ð²Ô³Ù CSV vers JSON.
Pris en charge depuis 4.4.0.
XML vers JSON Convertir les donn¨¦es au format XML en JSON.
Pour plus d'informations, voir : R¨¨gles de s¨¦rialisation.
Si vous cochez la case Personnalis¨¦ en cas d'¨¦chec, il est possible de sp¨¦cifier des options de gestion des erreurs personnalis¨¦es : soit pour ignorer la valeur, soit pour d¨¦finir une valeur sp¨¦cifi¨¦e, soit pour d¨¦finir un message d'erreur sp¨¦cifi¨¦.
Custom scripts
Scripts personnalis¨¦s
JavaScript Entrer le code JavaScript dans le bloc qui appara?t en cliquant dans le champ param¨¨tre ou sur Ouvrir.
Notez que la longueur JavaScript disponible d¨¦pend de la base de donn¨¦es utilis¨¦e.
Pour plus d'informations, voir : ±Ê°ù¨¦³Ù°ù²¹¾±³Ù±ð³¾±ð²Ô³Ù JavaScript
Validation
Ne correspond pas ¨¤ l'expression r¨¦guli¨¨re Sp¨¦cifier une expression r¨¦guli¨¨re ¨¤ laquelle une valeur ne doit pas correspondre.
Par exemple Error:(.*?)\.
Si vous cochez la case Personnalis¨¦ en cas d'¨¦chec, il est possible de sp¨¦cifier des options de gestion des erreurs personnalis¨¦es : soit pour ignorer la valeur, soit pour d¨¦finir une valeur sp¨¦cifi¨¦e, soit pour d¨¦finir un message d'erreur sp¨¦cifi¨¦.
Rechercher une erreur dans le JSON Rechercher un message d'erreur au niveau de l'application situ¨¦ dans JSONpath. Arr¨ºtez le traitement en cas de succ¨¨s et si le message n'est pas vide ; sinon, continuez le traitement avec la valeur qui ¨¦tait avant cette ¨¦tape de pr¨¦traitement. Notez que ces erreurs de service externes sont signal¨¦es ¨¤ l'utilisateur telles quelles, sans ajouter d'informations sur l'¨¦tape de pr¨¦traitement.
Par exemple $.errors. Si un JSON comme {"errors":"e1"} est re?u, la prochaine ¨¦tape de pr¨¦traitement ne sera pas ex¨¦cut¨¦e.
Si vous cochez la case Personnalis¨¦ en cas d'¨¦chec, il est possible de sp¨¦cifier des options de gestion des erreurs personnalis¨¦es : soit pour ignorer la valeur, soit pour d¨¦finir une valeur sp¨¦cifi¨¦e, soit pour d¨¦finir un message d'erreur sp¨¦cifi¨¦.
Rechercher une erreur dans le XML Rechercher un message d'erreur au niveau de l'application situ¨¦ dans xpath. Arr¨ºtez le traitement en cas de succ¨¨s et si le message n'est pas vide ; sinon, continuez le traitement avec la valeur qui ¨¦tait avant cette ¨¦tape de pr¨¦traitement. Notez que ces erreurs de service externe sont signal¨¦es ¨¤ l'utilisateur telles quelles, sans ajouter d'informations sur l'¨¦tape de pr¨¦traitement.
Aucune erreur ne sera signal¨¦e en cas d'¨¦chec de l'analyse du XML non valide.
Pris en charge depuis la version 4.4.0.
Si vous cochez la case Personnalis¨¦ en cas d'¨¦chec, il est possible de sp¨¦cifier des options de gestion des erreurs personnalis¨¦es : soit pour ignorer la valeur, soit pour d¨¦finir une valeur sp¨¦cifi¨¦e, soit pour d¨¦finir un message d'erreur sp¨¦cifi¨¦.
Limitation
Ecarte les inchang¨¦s avec bit de vie Ignorer une valeur si elle n'a pas chang¨¦ au cours de la p¨¦riode d¨¦finie (en secondes).
Les valeurs enti¨¨res positives sont prises en charge pour sp¨¦cifier les secondes (minimum - 1 seconde). Des suffixes de temps peuvent ¨ºtre utilis¨¦s dans ce champ (par exemple 30s, 1m, 2h, 1d). Des macros utilisateur et des macros de d¨¦couverte de bas niveau peuvent ¨ºtre utilis¨¦es dans ce champ.
Une seule option de limitation peut ¨ºtre sp¨¦cifi¨¦e pour un ¨¦l¨¦ment de d¨¦couverte.
Par exemple 1m. Si un texte identique est pass¨¦ deux fois dans cette r¨¨gle en 60 secondes, il sera supprim¨¦.
Remarque : La modification des prototypes d'¨¦l¨¦ments ne r¨¦initialise pas la limitation. La limitation est r¨¦initialis¨¦e uniquement lorsque les ¨¦tapes de pr¨¦traitement sont modifi¨¦es.
Prometheus
Prometheus vers JSON Convertire les m¨¦triques Prometheus requises en JSON.
Voir V¨¦rifications Prometheus pour plus de d¨¦tails.

Notez que si la r¨¨gle de d¨¦couverte a ¨¦t¨¦ appliqu¨¦e ¨¤ l'h?te via un mod¨¨le, le contenu de cet onglet est en lecture seule.

Macros personnalis¨¦es

L'onglet Macros LLD permet de sp¨¦cifier des macros de d¨¦couverte personnalis¨¦es de bas niveau.

Les macros personnalis¨¦es sont utiles dans les cas o¨´ le JSON renvoy¨¦ n'a pas les macros requises d¨¦j¨¤ d¨¦finies. Ainsi, par exemple :

  • La cl¨¦ native vfs.fs.discovery pour la d¨¦couverte du syst¨¨me de fichiers renvoie un JSON avec des macros LLD pr¨¦d¨¦finies telles que {#FSNAME}, {#FSTYPE}. Ces macros peuvent ¨ºtre utilis¨¦es dans l'¨¦l¨¦ment, d¨¦clencher des prototypes (voir les sections suivantes de la page) directement ; la d¨¦finition de macros personnalis¨¦es n'est pas n¨¦cessaire ;
  • L'¨¦l¨¦ment d'agent vfs.fs.get renvoie ¨¦²µ²¹±ôement un JSON avec les donn¨¦es du syst¨¨me de fichiers, mais sans macros LLD pr¨¦d¨¦finies. Dans ce cas, vous pouvez d¨¦finir vous-m¨ºme les macros et les mapper aux valeurs du JSON ¨¤ l'aide de JSONPath :

Les valeurs extraites peuvent ¨ºtre utilis¨¦es dans les ¨¦l¨¦ments d¨¦couverts, les d¨¦clencheurs, etc. Notez que les valeurs seront extraites du r¨¦sultat de la d¨¦couverte et de toutes les ¨¦tapes de pr¨¦-traitement trait¨¦es jusqu'¨¤ pr¨¦sent.

±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð Description
Macro LLD Nom de la macro de d¨¦couverte de bas niveau, utilisant la syntaxe suivante : {#MACRO}.
JSONPath Chemin utilis¨¦ pour extraire la valeur de macro LLD d'une ligne LLD, en utilisant la syntaxe JSONPath.
Par exemple, $.foo extraira "bar" et "baz" de ce JSON : [{"foo":" bar"}, {"foo":"baz"}]
Les valeurs extraites du JSON renvoy¨¦ sont utilis¨¦es pour remplacer les macros LLD dans les champs de prototype d'¨¦l¨¦ment, de d¨¦clencheur, etc.
JSONPath peut ¨ºtre sp¨¦cifi¨¦ ¨¤ l'aide la notation point¨¦e ou la notation parenth¨¨se. La notation entre parenth¨¨ses doit ¨ºtre utilis¨¦e dans le cas de caract¨¨res sp¨¦ciaux et d'Unicode, comme $['unicode + special chars #1']['unicode + special chars #2'].

Filtre

Un filtre peut ¨ºtre utilis¨¦ pour g¨¦n¨¦rer des ¨¦l¨¦ments r¨¦els, des d¨¦clencheurs et des graphiques uniquement pour les entit¨¦s qui correspondent aux crit¨¨res. L'onglet Filtres contient des d¨¦finitions de filtre de r¨¨gle de d¨¦couverte permettant de filtrer les valeurs de d¨¦couverte :

±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð Description
Type of calcul Les options suivantes de calcul des filtres sont disponibles :
Et - tous les filtres doivent ¨ºtre r¨¦ussis ;
Ou - suffisant si un filtre est r¨¦ussi ;
Et/Ou - utilise And avec des noms de macro diff¨¦rents et Or avec le m¨ºme nom de macro ;
Expression personnalis¨¦e - offre la possibilit¨¦ de d¨¦finir un calcul personnalis¨¦ des filtres. La formule doit inclure tous les filtres de la liste. Limit¨¦ ¨¤ 255 symboles.
Filtres Les op¨¦rateurs de condition de filtre suivants sont disponibles : correspond, ne correspond pas, existe, n'existe pas.
Les op¨¦rateurs correspond et ne correspond pas attendent une (PCRE). Par exemple, si vous n'¨ºtes int¨¦ress¨¦ que par les syst¨¨mes de fichiers C:, D: et E:, vous pouvez mettre {#FSNAME} dans "Macro" et "^C|^D|^E" regular expression dans les champs de texte "Expression r¨¦guli¨¨re". Le filtrage est ¨¦²µ²¹±ôement possible par type de syst¨¨me de fichiers ¨¤ l'aide de la macro {#FSTYPE} (par exemple, "^ext|^reiserfs") et par type de lecteur (uniquement pris en charge par l'agent Windows) ¨¤ l'aide de la macro {#FSDRIVETYPE} (par exemple, " fixed").
Vous pouvez saisir une expression r¨¦guli¨¨re ou faire r¨¦f¨¦rence ¨¤ une expression r¨¦guli¨¨re globale dans le champ "Expression r¨¦guli¨¨re".
Pour tester une expression r¨¦guli¨¨re, vous pouvez utiliser "grep -E", par exemple : for f in ext2 nfs reiserfs smbfs; do echo $f \| grep -E '^ext\|^reiserfs' \|\| echo "SKIP: $f"; done

La macro {#FSDRIVETYPE} sous Windows est prise en charge depuis Áú»¢¶Ä²© 3.0.0.

Les op¨¦rateurs existe et n'existe pas permettent de filtrer les entit¨¦s en fonction de la pr¨¦sence ou de l'absence de la macro LLD sp¨¦cifi¨¦e dans la r¨¦ponse (support¨¦ depuis la version 5.4.0).
La d¨¦finition de plusieurs filtres est prise en charge depuis Áú»¢¶Ä²© 2.4.0.
Notez que si une macro du filtre est manquante dans la r¨¦ponse, l'entit¨¦ trouv¨¦e sera ignor¨¦e, sauf si une condition "n'existe pas" est sp¨¦cifi¨¦e pour cette macro.

Un avertissement sera affich¨¦ si l'absence de macro affecte le r¨¦sultat d'expression. Par exemple si {#B} est manquant dans :
{#A} matches 1 and {#B} matches 2 - donnera un avertissement
{#A} matches 1 or {#B} matches 2 - pas d'avertissement.
Cette logique d'avertissement flexible est prise en charge depuis Áú»¢¶Ä²© 6.0.11.

Une erreur ou une faute de frappe dans l'expression r¨¦guli¨¨re utilis¨¦e dans la r¨¨gle LLD (par exemple, une expression r¨¦guli¨¨re "File systems for discovery" incorrecte) peut entra?ner la suppression de milliers d'¨¦l¨¦ments de configuration, de valeurs historiques et d'¨¦v¨¦nements pour de nombreux h?tes.

La base de donn¨¦es Áú»¢¶Ä²© dans MySQL doit ¨ºtre cr¨¦¨¦e en respectant la casse pour que les noms de syst¨¨me de fichiers qui ne diff¨¨rent que par la casse soient d¨¦couverts correctement.

Surcharge

L'onglet Surcharges permet de d¨¦finir des r¨¨gles pour modifier la liste des prototypes d'¨¦l¨¦ments, de d¨¦clencheurs, de graphiques et d'h?tes ou leurs attributs pour les objets d¨¦couverts qui r¨¦pondent ¨¤ des crit¨¨res donn¨¦s.

Les surcharges (le cas ¨¦ch¨¦ant) sont affich¨¦es dans une liste r¨¦organisable par glisser-d¨¦poser et ex¨¦cut¨¦s dans l'ordre dans lequel ils sont d¨¦finis. Pour configurer les d¨¦tails d'une nouvelle surcharge, cliquez sur dans le bloc Surcharges. Pour modifier une surcharge existante, cliquez sur le nom de la surcharge. Une fen¨ºtre contextuelle s'ouvrira permettant de modifier les d¨¦tails de la r¨¨gle de surcharge.

Tous les param¨¨tres obligatoires sont signal¨¦s par des ast¨¦risques rouges.

±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð Description
Name Un nom de surcharge unique (selon la r¨¨gle LLD).
Si le filtre correspond D¨¦finit si les surcharges suivantes doivent ¨ºtre trait¨¦es lorsque les conditions de filtre sont remplies :
Continuer les surcharges - les surcharges suivantes seront trait¨¦es.
Arr¨ºter le traitement - les op¨¦rations pr¨¦c¨¦dentes ( le cas ¨¦ch¨¦ant) et cette surcharge sera ex¨¦cut¨¦e, les surcharges suivantes seront ignor¨¦es pour les lignes LLD correspondantes.
Filtres D¨¦termine ¨¤ quelles entit¨¦s d¨¦couvertes la surcharge doit ¨ºtre appliqu¨¦e. Les filtres de surcharge sont trait¨¦s apr¨¨s les filtres de la r¨¨gle de d¨¦couverte et ont la m¨ºme fonctionnalit¨¦.
°¿±è¨¦°ù²¹³Ù¾±´Ç²Ô²õ Les op¨¦rations de surcharge sont affich¨¦es avec ces d¨¦tails :
Condition - un type d'objet (prototype d'¨¦l¨¦ment/prototype de d¨¦clencheur/prototype de graphique/prototype d'h?te) et une condition ¨¤ remplir (¨¦²µ²¹±ô/n'est pas ¨¦²µ²¹±ô/contient/ne contient pas/correspond ¨¤/ne correspond pas)
Action - les liens pour modifier et supprimer une op¨¦ration sont affich¨¦s.

Configurer une op¨¦ration

Pour configurer les d¨¦tails d'une nouvelle op¨¦ration, cliquez sur dans le bloc °¿±è¨¦°ù²¹³Ù¾±´Ç²Ô²õ. Pour modifier une op¨¦ration existante, cliquez sur ¨¤ c?t¨¦ de l'op¨¦ration. Une fen¨ºtre contextuelle dans laquelle vous pouvez modifier les d¨¦tails de l'op¨¦ration s'ouvrira.

±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð Description
Objet Quatre types d'objets sont disponibles :
Prototype d'¨¦l¨¦ment
Prototype de d¨¦clencheur
Prototype de graphique
Prototype d'h?te
Condition Permet de filtrer les entit¨¦s auxquelles l'op¨¦ration doit ¨ºtre appliqu¨¦e.
°¿±è¨¦°ù²¹³Ù±ð³Ü°ù °¿±è¨¦°ù²¹³Ù±ð³Ü°ùs pris en charge :
¨¦²µ²¹±ô - s'applique ¨¤ ce prototype
n'est pas ¨¦²µ²¹±ô - s'applique ¨¤ tous les prototypes, sauf celui-ci
contient - s'applique, si le nom du prototype contient une cha?ne
ne contient pas - s'applique, si le nom du prototype ne contient pas une cha?ne
correspond - s'applique, si le nom du prototype correspond ¨¤ l'expression r¨¦guli¨¨re
ne correspond pas - s'applique, si le nom du prototype ne correspond pas ¨¤ l'expression r¨¦guli¨¨re
Motif Une expression r¨¦guli¨¨re ou une cha?ne ¨¤ rechercher.
Objet: Prototype d'¨¦l¨¦ment
Cr¨¦er activ¨¦ Lorsque la case est coch¨¦e, les boutons appara?tront, permettant de remplacer les param¨¨tres de prototype d'¨¦l¨¦ment d'origine :
Oui - l'¨¦l¨¦ment sera ajout¨¦ dans un ¨¦tat activ¨¦.
Non - le ¨¦l¨¦ment sera ajout¨¦ ¨¤ une entit¨¦ d¨¦couverte mais dans un ¨¦tat d¨¦sactiv¨¦.
¶Ù¨¦³¦´Ç³Ü±¹°ù¾±°ù Lorsque la case est coch¨¦e, les boutons appara?tront, permettant de remplacer les param¨¨tres du prototype d'¨¦l¨¦ment d'origine :
Oui - l'¨¦l¨¦ment sera ajout¨¦.
Non - l'¨¦l¨¦ment ne sera pas ajout¨¦.
Intervalle d'actualisation Lorsque la case est coch¨¦e, deux options appara?tront, permettant de d¨¦finir un intervalle diff¨¦rent pour l'¨¦l¨¦ment :
¶Ù¨¦±ô²¹¾± - Intervalle de mise ¨¤ jour de l'¨¦l¨¦ment. Les macros utilisateur et les suffixes temporels (par exemple, 30s, 1m, 2h, 1d) sont pris en charge. Doit ¨ºtre d¨¦fini sur 0 si Intervalle personnalis¨¦ est utilis¨¦.
Intervalle personnalis¨¦ - cliquez sur pour sp¨¦cifier un intervalle flexible/planifi¨¦. Pour des informations d¨¦taill¨¦es, voir Intervalles personnalis¨¦s.
P¨¦riode de stockage de l'historique Lorsque la case est coch¨¦e, les boutons apparaissent, permettant de d¨¦finir une p¨¦riode de stockage de l'historique diff¨¦rente pour l'¨¦l¨¦ment :
Ne pas conserver l'historique - si s¨¦lectionn¨¦, l'historique ne sera pas ¨ºtre stock¨¦.
P¨¦riode de stockage - si s¨¦lectionn¨¦, un champ de saisie pour sp¨¦cifier la p¨¦riode de stockage appara?tra ¨¤ droite. Les macros utilisateur et les macros LLD sont prises en charge.
P¨¦riode de stockage des tendances Lorsque la case est coch¨¦e, les boutons apparaissent, permettant de d¨¦finir une p¨¦riode de stockage des tendances diff¨¦rente pour l'¨¦l¨¦ment :
Ne pas conserver les tendances - si s¨¦lectionn¨¦, les tendances ne seront pas ¨ºtre stock¨¦.
P¨¦riode de stockage - si s¨¦lectionn¨¦, un champ de saisie pour sp¨¦cifier la p¨¦riode de stockage appara?tra ¨¤ droite. Les macros utilisateur et les macros LLD sont prises en charge.
Tags Lorsque la case est coch¨¦e, un nouveau bloc appara?tra, permettant de sp¨¦cifier des paires tag-valeur.
Ces tags seront ajout¨¦s aux tags sp¨¦cifi¨¦s dans le prototype de l'¨¦l¨¦ment, m¨ºme si les noms de tag correspondent.
Objet : Prototype de d¨¦clencheur
Cr¨¦er activ¨¦ Lorsque la case est coch¨¦e, les boutons appara?tront, permettant de remplacer les param¨¨tres originaux du prototype de d¨¦clencheur :
Oui - le d¨¦clencheur sera ajout¨¦ dans un ¨¦tat activ¨¦.
Non - le d¨¦clencheur sera ajout¨¦ ¨¤ une entit¨¦ d¨¦couverte, mais dans un ¨¦tat d¨¦sactiv¨¦.
¶Ù¨¦³¦´Ç³Ü±¹°ù¾±°ù Lorsque la case est coch¨¦e, les boutons appara?tront, permettant de remplacer les param¨¨tres originaux du prototype de d¨¦clencheur :
Oui - le d¨¦clencheur sera ajout¨¦.
Non - le d¨¦clencheur ne sera pas ajout¨¦.
³§¨¦±¹¨¦°ù¾±³Ù¨¦ Lorsque la case est coch¨¦e, des boutons de s¨¦v¨¦rit¨¦ du d¨¦clencheur appara?tront, permettant de modifier la s¨¦v¨¦rit¨¦ du d¨¦clencheur.
Tags Lorsque la case est coch¨¦e, un nouveau bloc appara?tra, permettant de sp¨¦cifier des paires tag-valeur.
Ces tags seront ajout¨¦s aux tags sp¨¦cifi¨¦s dans le prototype du d¨¦clencheur, m¨ºme si les noms de tag correspondent.
Objet : Prototype de graphique
¶Ù¨¦³¦´Ç³Ü±¹°ù¾±°ù Lorsque la case est coch¨¦e, les boutons appara?tront, permettant de remplacer les param¨¨tres originaux du prototype de graphique :
Oui - le graphique sera ajout¨¦.
Non - le graphique ne sera pas ajout¨¦ .
Objet : Prototype d'h?te
Cr¨¦er activ¨¦ Lorsque la case est coch¨¦e, les boutons appara?tront, permettant de remplacer les param¨¨tres du prototype d'h?te d'origine :
Oui - l'h?te sera cr¨¦¨¦ dans un ¨¦tat activ¨¦.
Non - le l'h?te sera cr¨¦¨¦ dans un ¨¦tat d¨¦sactiv¨¦.
¶Ù¨¦³¦´Ç³Ü±¹°ù¾±°ù Lorsque la case est coch¨¦e, les boutons appara?tront, permettant de remplacer les param¨¨tres du prototype d'h?te d'origine :
Oui - l'h?te sera d¨¦couvert.
Non - l'h?te ne sera pas d¨¦couvert.
Lier les mod¨¨les Lorsque la case est coch¨¦e, un champ de saisie pour sp¨¦cifier les mod¨¨les appara?tra. Commencez ¨¤ saisir le nom du mod¨¨le ou cliquez sur ³§¨¦±ô±ð³¦³Ù¾±´Ç²Ô²Ô±ð°ù ¨¤ c?t¨¦ du champ et s¨¦lectionnez des mod¨¨les dans la liste dans une fen¨ºtre contextuelle.
Tous les mod¨¨les li¨¦s ¨¤ un prototype h?te seront remplac¨¦s par les mod¨¨les de cette surcharge.
Tags Lorsque la case est coch¨¦e, un nouveau bloc appara?tra, permettant de sp¨¦cifier des paires tag-valeur.
Ces tags seront ajout¨¦s aux tags sp¨¦cifi¨¦s dans le prototype de l'h?te, m¨ºme si les noms de tag correspondent.
Inventaire de l'h?te Lorsque la case est coch¨¦e, les boutons appara?tront, permettant de s¨¦lectionner un mode d'inventaire diff¨¦rent pour le prototype d'h?te :
¶Ù¨¦²õ²¹³¦³Ù¾±±¹¨¦ - ne pas remplir l'inventaire de l'h?te
Manuel - fournir les d¨¦tails manuellement
Automatique - remplir automatiquement les donn¨¦es d'inventaire de l'h?te en fonction des m¨¦triques collect¨¦es.

Boutons de formulaire

Des boutons en bas du formulaire permettent d'effectuer plusieurs op¨¦rations.

Ajouter une r¨¨gle de d¨¦couverte. Ce bouton n'est disponible que pour les nouvelles r¨¨gles de d¨¦couverte.
Mettre ¨¤ jour les propri¨¦t¨¦s d'une r¨¨gle de d¨¦couverte. Ce bouton n'est disponible que pour les r¨¨gles de d¨¦couverte existantes.
Cr¨¦er une autre r¨¨gle de d¨¦couverte bas¨¦e sur les propri¨¦t¨¦s de la r¨¨gle de d¨¦couverte actuelle.
Effectuer imm¨¦diatement une d¨¦couverte bas¨¦e sur la r¨¨gle de d¨¦couverte. La r¨¨gle de d¨¦couverte doit d¨¦j¨¤ exister. Voir plus de d¨¦tails.
Notez que lors d'une d¨¦couverte imm¨¦diate, le cache de configuration n'est pas mis ¨¤ jour, donc le r¨¦sultat ne refl¨¦tera pas les modifications tr¨¨s r¨¦centes apport¨¦es ¨¤ la configuration de la r¨¨gle de d¨¦couverte.
Supprimer la r¨¨gle de d¨¦couverte.
Annuler la modification des propri¨¦t¨¦s de la r¨¨gle de d¨¦couverte.

Entit¨¦s d¨¦couvertes

Les captures d'¨¦cran ci-dessous illustrent ¨¤ quoi ressemblent les ¨¦l¨¦ments, les d¨¦clencheurs et les graphiques d¨¦couverts dans la configuration de l'h?te. Les entit¨¦s d¨¦couvertes sont pr¨¦c¨¦d¨¦es d'un lien orange vers une r¨¨gle de d¨¦couverte dont elles proviennent.

Notez que les entit¨¦s d¨¦couvertes ne seront pas cr¨¦¨¦es s'il existe d¨¦j¨¤ des entit¨¦s existantes avec les m¨ºmes crit¨¨res d'unicit¨¦, par exemple, un ¨¦l¨¦ment avec la m¨ºme cl¨¦ ou un graphique avec le m¨ºme nom. Un message d'erreur s'affiche dans ce cas dans le frontend indiquant que la r¨¨gle de d¨¦couverte de bas niveau n'a pas pu cr¨¦er certaines entit¨¦s. La r¨¨gle de d¨¦couverte elle-m¨ºme, cependant, ne deviendra pas non prise en charge car certaines entit¨¦s n'ont pas pu ¨ºtre cr¨¦¨¦es et ont d? ¨ºtre ignor¨¦es. La r¨¨gle de d¨¦couverte continuera ¨¤ cr¨¦er/mettre ¨¤ jour d'autres entit¨¦s.

Les ¨¦l¨¦ments (de m¨ºme que les d¨¦clencheurs et les graphiques) cr¨¦¨¦s par une r¨¨gle de d¨¦couverte de bas niveau seront automatiquement supprim¨¦s si une entit¨¦ d¨¦couverte (syst¨¨me de fichiers, interface, etc.) cesse d'¨ºtre d¨¦couverte (ou ne passe plus le filtre). Dans ce cas, les ¨¦l¨¦ments, les d¨¦clencheurs et les graphiques seront supprim¨¦s apr¨¨s les jours d¨¦finis dans le champ P¨¦riode de conservation des ressources perdues ±è²¹²õ²õ¨¦²õ.

Lorsque les entit¨¦s d¨¦couvertes deviennent 'Plus d¨¦couvertes', un indicateur de dur¨¦e de vie s'affiche dans la liste des ¨¦l¨¦ments. D¨¦placez le pointeur de votre souris dessus et un message s'affichera indiquant combien de jours il reste jusqu'¨¤ ce que l'¨¦l¨¦ment soit supprim¨¦.

Si des entit¨¦s ont ¨¦t¨¦ marqu¨¦es pour suppression, mais n'ont pas ¨¦t¨¦ supprim¨¦es au moment pr¨¦vu (r¨¨gle de d¨¦couverte ou h?te d'¨¦l¨¦ment d¨¦sactiv¨¦), elles seront supprim¨¦es lors du prochain traitement de la r¨¨gle de d¨¦couverte.

Les entit¨¦s contenant d'autres entit¨¦s, qui sont marqu¨¦es pour suppression, ne seront pas mises ¨¤ jour si elles sont modifi¨¦es au niveau de la r¨¨gle de d¨¦couverte. Par exemple, les d¨¦clencheurs bas¨¦s sur LLD ne seront pas mis ¨¤ jour s'ils contiennent des ¨¦l¨¦ments marqu¨¦s pour suppression.

Autres types de d¨¦couverte

Plus de d¨¦tails et de proc¨¦dures sur d'autres types de d¨¦couvertes pr¨ºtes ¨¤ l'emploi sont disponibles dans les sections suivantes :

Pour plus de d¨¦tails sur le format JSON des ¨¦l¨¦ments de d¨¦couverte et un exemple d'impl¨¦mentation de votre propre outil de d¨¦couverte de syst¨¨me de fichiers avec un script Perl, consultez la cr¨¦ation de r¨¨gles LLD personnalis¨¦es.