extract

Utilisez la commande extract pour obtenir des extraits d'un champ existant à l'aide d'une expression rationnelle. La commande saisit les extraits obtenus dans des champs virtuels à l'aide des noms fournis pour les groupes d'expressions rationnelles.

Note

  • La commande extract ne peut pas fonctionner dans le champ Contenu de journal initial. Le champ par défaut, s'il n'est pas spécifié, est Message.

    Pour pouvoir utiliser la commande extract sur la valeur du champ Contenu du journal initial, copiez d'abord le champ Contenu du journal initial dans un champ de chaîne, puis exécutez extract sur le nouveau champ de chaîne.

  • Les commandes de traitement de chaîne telles que extract nécessitent beaucoup de ressources. Pour cette raison, il n'est pas recommandé d'exécuter la commande extract sur un grand nombre d'enregistrements de journal ou sur des valeurs de champ volumineuses. À la place, extrayez ces valeurs à l'aide des définitions de champ étendu (EFD) ou des étiquettes dans votre source de journaux.

Syntaxe

extract field = <field_to_parse> (<regular_expression>)

Paramètres

Le tableau suivant répertorie les paramètres utilisés dans cette commande, ainsi que leur description.

Paramètre Description

field_to_parse

Indiquez le champ qui doit être analysé à l'aide de l'expression rationnelle.

regular_expression

Indiquez l'expression rationnelle à utiliser pour analyser le champ existant.

Le format de construction de l'expression rationnelle doit être cohérent avec la correspondance de modèle RE2J et doit contenir au moins un groupe de saisie nommé. Voir Syntaxe des expressions rationnelles.

La commande suivante sépare le contenu du champ d'entité en deux parties. Par exemple, la valeur d'entité host-phx-1.oci.oraclecloud.com avec modèle serait fractionnée en deux champs virtuels nommés Hôte et Domaine, avec les valeurs host-phx-1 et oci.oraclecloud.com.

* | extract field = Entity '(?P<Host>\w+)\.?(?P<Domain>.*)'

La commande suivante crée un champ virtuel nommé ErrorCode qui contient le suffixe du champ ErrorInfo afin qu'il puisse être utilisé comme clé dans la table de consultation Error Ids. Cela peut être utilisé pour consulter la description et les étapes de correction à partir d'une table de consultation et fournir un sommaire tabulaire du nombre de fois où chaque erreur s'est produite et de la façon de la corriger.

'Log Source' like '%database%' 
    | extract field = ErrorInfo 'ora-(?P<ErrorCode>.*)' 
    | lookup table="error ids" select error_description, 
        error_remediation using error_id = ErrorCode 
    | stats count, unique(error_description), 
        unique(error_remediation) by ErrorInfo