Áú»¢¶Ä²©

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

12. Expressions r¨¦guli¨¨res

Aper?u

(PCRE, PCRE2) sont pris en charge dans Áú»¢¶Ä²©.

Il existe deux mani¨¨res d'utiliser les expressions r¨¦guli¨¨res dans Áú»¢¶Ä²© :

  • saisie manuelle d'une expression r¨¦guli¨¨re
  • en utilisant une expression r¨¦guli¨¨re globale cr¨¦¨¦e dans Áú»¢¶Ä²©

Expressions r¨¦guli¨¨res

Vous pouvez entrer manuellement une expression r¨¦guli¨¨re dans les emplacements pris en charge. Notez que l'expression ne peut pas commencer par @ car ce symbole est utilis¨¦ dans Áú»¢¶Ä²© pour r¨¦f¨¦rencer des expressions r¨¦guli¨¨res globales.

Il est possible de manquer de pile (out of stack) lors de l'utilisation d'expressions r¨¦guli¨¨res. Consultez la pour plus d'informations.

Notez que dans la correspondance multiligne, les ancres ^ et $ correspondent respectivement au d¨¦but/¨¤ la fin de chaque ligne, au lieu du d¨¦but/de la fin de la cha?ne enti¨¨re.

Expressions r¨¦guli¨¨res globales

Il existe un ¨¦diteur avanc¨¦ pour cr¨¦er et tester des expressions r¨¦guli¨¨res complexes dans l'interface Áú»¢¶Ä²©.

Une fois qu'une expression r¨¦guli¨¨re a ¨¦t¨¦ cr¨¦¨¦e de cette fa?on, elle peut ¨ºtre utilis¨¦e ¨¤ plusieurs endroits dans le frontend en se r¨¦f¨¦rant ¨¤ son nom, pr¨¦fix¨¦ par @, par exemple, @mycustomregexp.

Pour cr¨¦er une expression r¨¦guli¨¨re globale :

  • Allez dans : Administration ¡ú G¨¦n¨¦ral
  • ³§¨¦±ô±ð³¦³Ù¾±´Ç²Ô²Ô±ð³ú Expressions r¨¦guli¨¨res dans le menu d¨¦roulant
  • Cliquez sur Nouvelle expression r¨¦guli¨¨re

L'onglet Expressions permet de d¨¦finir le nom de l'expression r¨¦guli¨¨re et d'ajouter des sous-expressions.

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

±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð Description
Nom D¨¦finissez le nom de l'expression r¨¦guli¨¨re. Tous les caract¨¨res Unicode sont autoris¨¦s.
Expressions Cliquez sur Ajouter dans le bloc Expressions pour ajouter une nouvelle sous-expression.
Type d'expression ³§¨¦±ô±ð³¦³Ù¾±´Ç²Ô²Ô±ð³ú le type d'expression :
Cha?ne de caract¨¨res incluse - correspond ¨¤ la sous-cha?ne
Toute cha?ne de caract¨¨res incluse - correspond ¨¤ toutes les sous-cha?nes d'une liste d¨¦limit¨¦e. La liste d¨¦limit¨¦e comprend une virgule (,), un point (.) ou une barre oblique (/).
Cha?ne de caract¨¨res non incluse - correspond ¨¤ n'importe quelle cha?ne sauf la sous-cha?ne
Le r¨¦sultat est VRAI - correspond ¨¤ l'expression r¨¦guli¨¨re
Le r¨¦sultat est FAUX - ne correspond pas ¨¤ l'expression r¨¦guli¨¨re
Expression Saisissez une sous-cha?ne/expression r¨¦guli¨¨re.
¶Ù¨¦±ô¾±³¾¾±³Ù±ð³Ü°ù Une virgule (,), un point (.) ou une barre oblique (/) pour s¨¦parer les cha?nes de texte dans une expression r¨¦guli¨¨re. Ce param¨¨tre n'est actif que lorsque le type d'expression "Toute cha?ne de caract¨¨res incluse" est s¨¦lectionn¨¦.
Sensible ¨¤ la casse Une case ¨¤ cocher pour sp¨¦cifier si une expression r¨¦guli¨¨re est sensible ¨¤ la casse des lettres.

Une barre oblique (/) dans l'expression est trait¨¦e litt¨¦ralement, plut?t qu'un d¨¦limiteur. De cette fa?on, il est possible d'enregistrer des expressions contenant une barre oblique, sans erreur.

Un nom d'expression r¨¦guli¨¨re personnalis¨¦ dans Áú»¢¶Ä²© peut contenir des virgules, des espaces, etc. Dans les cas o¨´ cela peut conduire ¨¤ une mauvaise interpr¨¦tation lors du r¨¦f¨¦rencement (par exemple, une virgule dans le param¨¨tre d'une cl¨¦ d'¨¦l¨¦ment), la r¨¦f¨¦rence enti¨¨re peut ¨ºtre mise entre guillemets comme ceci : "@My custom regexp for purpose1, purpose2".
Les noms d'expressions r¨¦guli¨¨res ne doivent pas ¨ºtre entre guillemets dans d'autres emplacements (par exemple, dans les propri¨¦t¨¦s de r¨¨gle LLD).

Dans l'onglet Test, l'expression r¨¦guli¨¨re et ses sous-expressions peuvent ¨ºtre test¨¦es en fournissant une cha?ne de test.

Les r¨¦sultats affichent l'¨¦tat de chaque sous-expression et l'¨¦tat total de l'expression personnalis¨¦e.

L'¨¦tat total de l'expression personnalis¨¦e est d¨¦fini comme R¨¦sultat combin¨¦. Si plusieurs sous-expressions sont d¨¦finies, Áú»¢¶Ä²© utilise l'op¨¦rateur logique ET pour calculer le r¨¦sultat combin¨¦. Cela signifie que si au moins un r¨¦sultat est Faux, R¨¦sultat combin¨¦ a ¨¦galement le statut Faux.

Expressions r¨¦guli¨¨res globales par d¨¦faut

Áú»¢¶Ä²© est livr¨¦ avec plusieurs expressions r¨¦guli¨¨res globales dans son jeu de donn¨¦es par d¨¦faut.

Nom Expression Correspondances
File systems for discovery ^(btrfs\|ext2\|ext3\|ext4\|jfs\|reiser\|xfs\|ffs\|ufs\|jfs\|jfs2\|vxfs\|hfs\|refs\|apfs\|ntfs\|fat32\|zfs)$ "btrfs" or "ext2" or "ext3" or "ext4" or "jfs" or "reiser" or "xfs" or "ffs" or "ufs" or "jfs" or "jfs2" or "vxfs" or "hfs" or "refs" or "apfs" or "ntfs" or "fat32" or "zfs"
Network interfaces for discovery ^Software Loopback Interface Strings starting with "Software Loopback Interface".
^lo$ "lo"
^(In)?[Ll]oop[Bb]ack[0-9._]*$ Strings that optionally start with "In", then have "L" or "l", then "oop", then "B" or "b", then "ack", which can be optionally followed by any number of digits, dots or underscores.
^NULL[0-9.]*$ Strings starting with "NULL" optionally followed by any number of digits or dots.
^[Ll]o[0-9.]*$ Strings starting with "Lo" or "lo" and optionally followed by any number of digits or dots.
^[Ss]ystem$ "System" or "system"
^Nu[0-9.]*$ Strings starting with "Nu" optionally followed by any number of digits or dots.
Storage devices for SNMP discovery ^(Physical memory\|Virtual memory\|Memory buffers\|Cached memory\|Swap space)$ "Physical memory" or "Virtual memory" or "Memory buffers" or "Cached memory" or "Swap space"
Windows service names for discovery ^(MMCSS\|gupdate\|SysmonLog\|clr_optimization_v2.0.50727_32\|clr_optimization_v4.0.30319_32)$ "MMCSS" or "gupdate" or "SysmonLog" or strings like "clr_optimization_v2.0.50727_32" and "clr_optimization_v4.0.30319_32" where instead of dots you can put any character except newline.
Windows service startup states for discovery ^(automatic\|automatic delayed)$ "automatic" or "automatic delayed"

Exemples

Exemple 1

Utilisation de l'expression suivante dans la d¨¦couverte de bas niveau pour d¨¦couvrir des bases de donn¨¦es ¨¤ l'exception d'une base de donn¨¦es portant un nom sp¨¦cifique :

 ^TESTDATABASE$

regexp_expr_2.png

Type d'expression choisi : "Le r¨¦sultat est FAUX". Ne correspond pas au nom, contenant la cha?ne "TESTDATABASE".

Exemple avec un modificateur de regex en ligne

Utilisation de l'expression r¨¦guli¨¨re suivante incluant un modificateur en ligne (?i) pour faire correspondre les caract¨¨res "error":

 (?i)error

regexp_expr_3a.png

Type d'expression choisi : "Le r¨¦sultat est VRAI". Les caract¨¨res "error" sont mis en correspondance.

Un autre exemple avec un modificateur de regex en ligne

Utilisation de l'expression r¨¦guli¨¨re suivante, y compris plusieurs modificateurs en ligne pour faire correspondre les caract¨¨res apr¨¨s une ligne sp¨¦cifique :

 (?<=match (?i)everything(?-i) after this line\n)(?sx).*# nous ajoutons le modificateur s pour autoriser . ¨¤ faire correspondre les caract¨¨res de nouvelle ligne

regexp_expr_4_new.png

Type d'expression choisi : "Le r¨¦sultat est VRAI". Les caract¨¨res apr¨¨s une ligne sp¨¦cifique sont mis en correspondance.

Le modificateur g ne peut pas ¨ºtre sp¨¦cifi¨¦ en ligne. La liste des modificateurs disponibles se trouve dans . Pour plus d'informations sur la syntaxe PCRE, veuillez consulter la .

Prise en charge des expressions r¨¦guli¨¨res par emplacement

Emplacement Expression r¨¦guli¨¨re Expression r¨¦guli¨¨re globale Correspondance multiligne Commentaires
?l¨¦ments d'agent
eventlog[] Oui Oui Oui ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ðs regexp, severity, source, eventid
log[] ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð regexp
log.count[]
logrt[] Oui/Non Le param¨¨tre regexp prend en charge les deux, le param¨¨tre file_regexp ne prend en charge que les expressions non globales
logrt.count[]
proc.cpu.util[] Non Non ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð cmdline
proc.mem[]
proc.num[]
sensor[] ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ðs device et sensor sous Linux 2.4
system.hw.macaddr[] ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð interface
system.sw.packages[] ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð package
vfs.dir.count[] ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ðs regex_incl, regex_excl, regex_excl_dir
vfs.dir.size[] ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ðs regex_incl, regex_excl, regex_excl_dir
vfs.file.regexp[] Oui ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð regexp
vfs.file.regmatch[]
web.page.regexp[]
Traps SNMP
snmptrap[] Oui Oui Non ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð regexp
Pr¨¦traitement de la valeur de l'¨¦l¨¦ment Oui Non Non ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð pattern
Fonctions pour d¨¦clencheurs/¨¦l¨¦ments calcul¨¦s
count() Oui Oui Oui ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð pattern si le param¨¨tre operator est regexp ou iregexp
countunique() Oui Oui
find() Oui Oui
logeventid() Oui Oui Non ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð pattern
logsource()
D¨¦couverte de bas niveau
Filters Oui Oui Non Champ Expression r¨¦guli¨¨re
Overrides Oui Non Dans les options correspond, ne correspond pas pour les conditions d' °¿±è¨¦°ù²¹³Ù¾±´Ç²Ô
Conditions d'action Oui Non Non Dans les options correspond, ne correspond pas pour Nom d'h?te and M¨¦tadonn¨¦es de l'h?te des conditions d'enregistrement automatique
Surveillance Web Oui Non Oui Variables avec un pr¨¦fixe regex:
Champ Cha?ne requise
Contexte de macro utilisateur Oui Non Non Dans un contexte macro avec un pr¨¦fixe regex:
Fonctions de macro
regsub() Oui Non Non ±Ê²¹°ù²¹³¾¨¨³Ù°ù±ð pattern
iregsub()
Mappage d'ic?nes Oui Oui Non Champ Expression
Mappage de valeur Oui Non Non Champ Valeur si le type de mappage est regexp