Gérer les consultations

À l'aide d'Oracle Logging Analytics, vous pouvez enrichir les données d'événement en ajoutant des combinaisons champ-valeur à partir de consultations. Oracle Logging Analytics utilise des consultations pour mettre en correspondance les combinaisons champ- valeur des événements avec une table de consultation externe et, en cas de correspondance, Oracle Logging Analytics ajoute les combinaisons champ- valeur aux événements.

Types de consultation :
  • Simple : Cette table contiendra une simple liste d'éléments où les rangées correspondent à une seule relation. Par exemple, si vous créez une table de consultation contenant des erreurs, chaque rangée peut avoir les informations relatives à une seule erreur, comme un code d'erreur, un message d'erreur, une cause et une action corrective. Voir Créer une consultation simple.
  • Dictionnaire : Cette option est plus intelligente pour intégrer les relations logiques entre les champs et leurs valeurs à l'aide d'opérateurs tels que CONTAINS, CONTAINS IGNORE CASE MULTILINE REGEX et EQUAL. Pour obtenir la liste exhaustive des opérateurs, des exemples et des étapes permettant de créer ce type de consultation, voir Créer une consultation de dictionnaire.
Voici quelques-unes des tables de consultation simples définies par Oracle actuellement disponibles dans Oracle Logging Analytics :
  • Messages d'erreur BEA
  • Messages d'erreur CRS
  • Messages d'erreur OGC
  • Messages d'erreur ORA
  • Messages d'erreur TNS

Pour les autorisations d'effectuer toutes les opérations sur les consultations, voir Autoriser les utilisateurs à effectuer toutes les opérations sur les consultations.

Note

La taille d'un fichier de consultation unique ne doit pas dépasser 10 Mo. Cependant, il n'y a pas de limite au nombre de rangées dans la consultation.

Note

Si vous voulez empêcher un utilisateur de voir le contenu d'une consultation, même indirectement, cet utilisateur NE DOIT PAS être autorisé à :

  • Charger les journaux
  • Voir les journaux contenant les champs enrichis à l'aide de ces consultations restreintes

Comment les consultations enrichissent les journaux

Souvent, les journaux ne contiennent pas toutes les informations requises pour consolider l'analyse. Dans ce cas, vous pouvez créer une table de consultation pour récupérer les informations que vous avez déjà rassemblées afin de donner plus de sens aux données des journaux. Par exemple, le champ ID erreur des événements de journal ne fournit pas de description des erreurs. Vous pouvez créer une consultation qui mappe l'ID erreur aux descriptions, puis utiliser les options d'enrichissement de champ pour rendre les descriptions disponibles pour la recherche dans les enregistrements de journal. Voici quelques exemples de scénarios dans lesquels vous pouvez créer des consultations :

  • Stock de produits : ID produit, spécifications techniques, prix, stock disponible, numéro de bâti
  • Informations sur l'employé : ID employé, informations personnelles, organisation, rôle, échelon, salaire, gestionnaire
  • Informations de référence sur la bibliothèque : vignette, auteur, sommaire, édition, éditions précédentes, prix

Fonctionnement des consultations

Vous pouvez principalement utiliser les consultations simples lors de l'ingestion à l'aide de la fonction Consultation source. Voir Utiliser les consultations lors de l'ingestion dans la source.

Vous pouvez également utiliser des consultations simples lors de l'interrogation, comme indiqué ci-dessous :

Dans l'interrogation lookup suivante, le message d'erreur est extrait de la table de consultation ORA Error Messages en mappant le champ ID erreur et affiché dans une table sommaire avec d'autres champs tels que la source de journaux et l'entité :

'Error ID' like 'ORA%' | lookup table = 'ORA Error Messages' select errmsg using 'Error ID' = errid | fields -*, 'Log Source', Entity, errmg
  • Informations provenant des journaux :
    • Error ID : ID erreur tel qu'indiqué dans les journaux spécifiés dans le formulaire ORA%
    • Log Source : Source des journaux
    • Entity : Entité des journaux
  • Informations de la table de consultation définie par Oracle ORA Error Messages :
    • errid : ID erreur spécifié dans le formulaire ORA%
    • errmsg : Message d'erreur pour l'ID erreur

    Les autres détails disponibles dans la table de consultation ORA Error Messages sont errcause (Cause d'erreur) et erraction (Action d'erreur) pour chaque ID erreur. Pour voir le contenu de la table de consultation, utilisez la commande searchlookup comme suit :

    * | searchlookup table = 'ORA Error Messages'

Voir les détails de la consultation

  1. Ouvrez le menu de navigation et cliquez sur Observabilité et gestion. Sous Logging Analytics, cliquez sur Administration. La page Aperçu de l'administration s'ouvre.

  2. Les ressources d'administration sont répertoriées dans le volet de navigation de gauche sous Ressources. Cliquez sur Consultations.

  3. Sous Consultations, cliquez sur la consultation dont vous voulez voir les détails.

    La page Détails de consultation affiche les détails que vous avez fournis lors de sa création, ainsi que le contenu de la table de consultation. Vous pouvez également effectuer des actions telles que Déplacer la ressource, Ajouter des marqueurs et Supprimer. Pour plus de détails sur ces actions, voir la section suivante.

To perform other actions on the lookup, in the Lookups listing page, select the Compartment, Type, and Creation Type of your lookup, and narrow down your search for your lookup in the Filters section. Vous pouvez également inclure des filtres de marqueur pour filtrer les consultations par marqueurs. Après avoir identifié votre consultation, cliquez sur l'icône Icône Actions Actions dans la rangée de votre consultation :

  • Recharger le fichier : Dans le cas de consultations créées par l'utilisateur, si vous avez une nouvelle version de la table de consultation ou si un chargement précédent a échoué, vous pouvez le recharger.

  • Supprimer : Vous devrez peut-être supprimer certaines de vos consultations anciennes ou inutilisées. Pour supprimer la consultation, confirmez-la dans la boîte de dialogue Supprimer la consultation. Vous ne pouvez supprimer une consultation que si elle a été créée par l'utilisateur.

  • OCID de la copie : L'OCID de la ressource de consultation est copié. Vous pouvez l'utiliser pour référencer cette ressource n'importe où dans Oracle Cloud Infrastructure.
  • Transférer la ressource : La boîte de dialogue Transférer la ressource vers un autre compartiment s'affiche. From the options, select the compartment to which you want to move the lookup, and click Move Resource.
  • Ajouter des marqueurs : Ajouter des marqueurs aux ressources Logging Analytics.

Mettre à jour une consultation existante

  1. Mettez à jour votre fichier CSV avec les combinaisons champ-valeur.

  2. Ouvrez le menu de navigation et cliquez sur Observabilité et gestion. Sous Logging Analytics, cliquez sur Administration. La page Aperçu de l'administration s'ouvre.

  3. Les ressources d'administration sont répertoriées dans le volet de navigation de gauche sous Ressources. Cliquez sur Consultations.

  4. Sous Consultations, cliquez sur l'icône Actions Menu Actions dans la rangée qui correspond à la consultation à mettre à jour, cliquez sur Recharger un fichier.

    La boîte de dialogue Recharger un fichier s'ouvre.

  5. Sélectionnez le fichier CSV de consultation mis à jour que vous avez créé précédemment, puis cliquez sur Charger.

Créer une consultation simple

Après avoir créé la consultation simple, exécutez une interrogation avec la commande searchlookup pour lister les valeurs de la consultation et utilisez la commande lookup dans une interrogation pour mapper les champs de sortie à ces valeurs.

  1. Créez un fichier CSV de consultation avec les combinaisons champ-valeur. Par exemple, pour créer une consultation qui mappe l'ID erreur aux descriptions :

    errid,description
    02323,Network Not Reachable
    09912,User Activity
    12322,Out of Memory

    Notez que la première rangée est l'en-tête avec les titres errid et description pour les valeurs des rangées suivantes.

  2. Ouvrez le menu de navigation et cliquez sur Observabilité et gestion. Sous Logging Analytics, cliquez sur Administration. La page Aperçu de l'administration s'ouvre.

  3. Les ressources d'administration sont répertoriées dans le volet de navigation de gauche sous Ressources. Cliquez sur Consultations.

    La page de liste des consultations s'affiche. Dans le volet de navigation de gauche, sélectionnez le compartiment dans lequel la consultation doit être créée.

  4. Sous Consultations, cliquez sur Créer une consultation.

  5. Dans la page Créer une consultation, entrez le nom de la consultation, par exemple server error code lookups et une description facultative.

  6. Sous Type, sélectionnez Simple.

  7. Sélectionnez le fichier CSV de consultation que vous avez créé précédemment.

  8. Facultativement, développez la section Afficher les options avancées et ajoutez des marqueurs à la consultation. Click Create.

Créer une consultation de dictionnaire

Après avoir créé la consultation du type de dictionnaire, utilisez la commande searchlookup pour lister les consultations. Utilisez la commande lookup pour mapper les champs avec n'importe quelle interrogation uniquement après avoir utilisé les commandes link ou cluster dans l'interrogation.

Autres rubriques :

Notez que vous ne pouvez utiliser des consultations de type dictionnaire qu'au moment de l'interrogation et non au moment de l'ingestion dans la fonction source.

Pour des exemples d'utilisation de la consultation de dictionnaire avec les commandes Cluster et Link, voir Utiliser la consultation de dictionnaire avec la commande Cluster et Utiliser la consultation de dictionnaire avec la commande Link.

Pour un exemple d'utilisation de la consultation de dictionnaire pour fournir la géolocalisation, voir Spécifier la géolocalisation à l'aide d'une consultation.

  1. Créez un fichier CSV de consultation avec les combinaisons champ-valeur.

    Par exemple :

    Operator,Condition,Issue,Area
    CONTAINS,message header or abbreviation processing failed,Processing Error,Messaging
    CONTAINS,Failed to associate the transaction context with the response while marshalling,Marshalling Error,Response
    CONTAINS,A RuntimeException was generated by the RMI server,Exception,RMI

    Notez que la première rangée est l'en-tête où Operator et Condition sont les champs obligatoires spécifiés dans le même ordre. Les paramètres suivants sont répertoriés dans la rangée d'en-tête après les paramètres obligatoires. Les rangées suivantes correspondent aux valeurs des paramètres répertoriés dans la rangée d'en-tête dans le même ordre.

    Voir le tableau ci-dessous pour la liste des opérateurs valides et des exemples pour les utiliser.

    Note :

    • Si un champ contient une virgule, placez le champ entier entre guillemets.

    • Si un champ contient des guillemets doubles, utilisez deux guillemets doubles comme caractères d'échappement.

  2. Ouvrez le menu de navigation et cliquez sur Observabilité et gestion. Sous Logging Analytics, cliquez sur Administration. La page Aperçu de l'administration s'ouvre.

  3. Les ressources d'administration sont répertoriées dans le volet de navigation de gauche sous Ressources. Cliquez sur Consultations.

    La page de liste des consultations s'affiche. Dans le volet de navigation de gauche, sélectionnez le compartiment dans lequel la consultation doit être créée.

  4. Sous Consultations, cliquez sur le lien Créer une consultation.

  5. Dans la page Créer une consultation, entrez le nom de la consultation, par exemple cluster dictionary lookups et une description facultative.

  6. Sous Type, sélectionnez Dictionnaire.

  7. Sélectionnez le fichier CSV de consultation que vous avez créé précédemment.

  8. Facultativement, développez la section Afficher les options avancées et ajoutez des marqueurs à la consultation. Click Create.

Opérateur CIDRMATCH

L'opérateur CIDRMATCH prend en charge la règle d'opération de correspondance CIDR (routage interdomaine sans classe) dans une consultation de dictionnaire. Par exemple, le dictionnaire suivant retourne Network Name (Nom du réseau) comme Database Network (Réseau de base de données) si l'adresse IP d'entrée se situe entre 192.0.2.0 et 192.0.2.255 :

Operator,Condition,Network Name
CIDRMATCH,192.0.2.10/24,Database Network

Liste des opérateurs valides et exemples d'utilisation

Opérateur Description Exemple

CONTAINS

Vrai si la valeur contient la chaîne indiquée dans le champ Condition. Sensible à la casse

CONTAINS,Request 'GetResponse' Timed out,Timeout Error

CONTAINS IGNORE CASE

Identique à ce qui précède, sauf si la casse est ignorée

CONTAINS IGNORE CASE,request 'getresponse' timed out,Timeout Error

CONTAINS REGEX

Vrai si la valeur correspond à l'expression rationnelle spécifiée

CONTAINS REGEX,Request '\S+' Timed out,Timeout Error

CONTAINS IGNORE CASE REGEX

Identique à ce qui précède, mais ignore la casse

CONTAINS IGNORE CASE REGEX,request '\S+' timed out,Timeout Error

CONTAINS MULTILINE REGEX

À utiliser pour effectuer une correspondance avec une chaîne multiligne

CONTAINS MULTILINE REGEX,Request 'GetResponse' Timed out,Timeout Error

CONTAINS IGNORE CASE MULTILINE REGEX

Identique à ce qui précède, sauf si la casse est ignorée

CONTAINS IGNORE CASE MULTILINE REGEX,Request 'GetResponse' Timed out,Timeout Error

CONTAINS ONE OF REGEXES

Spécifiez plusieurs expressions rationnelles. Vrai s'il existe au moins une correspondance.

Listez les expressions rationnelles dans [] et séparez-les par des virgules. Les expressions rationnelles ne peuvent pas contenir de virgule.

Si vous devez utiliser des guillemets doubles dans l'expression rationnelle, échappez chaque guillemet double à l'aide d'un autre guillemet double.

CONTAINS ONE OF REGEXES,"[Request '\S+' Timed out,Server\S+Timed out]",Timeout Error

NOT CONTAINS

Ne contient pas la chaîne spécifiée

NOT CONTAINS,Request 'GetResponse' Timed out,Success

EQUAL

Le contenu est identique à la valeur spécifiée

EQUAL,500,HTTP Server Error

EQUAL IGNORE CASE

Identique à ce qui précède, sauf si la casse est ignorée

EQUAL,In-Progress,Request In Progress

NOT EQUAL

Vrai si le contenu est différent de la valeur spécifiée

NOT EQUAL,200,HTTP Request Failed

STARTS WITH

Se compare au début du contenu

STARTS WITH,Request failed with,Fail

ENDS WITH

Se compare à la fin du contenu

ENDS WITH,timed out,Timeout

IN

Vrai si au moins une valeur correspond

IN,"[500,501,502,503]",HTTP Server Error

IN IGNORE CASE

Identique à ce qui précède, sauf si la casse est ignorée

IN IGNORE CASE,[fail,timeout,error,fatal],Request Failed

NOT IN

Vrai si le contenu est différent d'une des valeurs de la liste

NOT IN,"[500,501,503,400,401,404]",HTTP Request Successful

NULL

Vrai si le contenu du champ est nul

NULL,,No Value

NOT NULL

Vrai si le contenu du champ n'est pas nul

NOT NULL,,Value Present

CIDRMATCH

Règle d'opération de correspondance de bloc CIDR (routage interdomaine sans classe) dans une consultation de dictionnaire

Voir Opérateur CIDRMATCH.

Liste d'opérateurs numériques et logiques et exemples

Note

Assurez-vous que les opérateurs numériques ne sont pas mélangés avec les opérateurs de chaîne dans le même dictionnaire. Si les opérateurs sont mélangés dans le même dictionnaire et qu'une valeur de chaîne est transmise dans l'interrogation, un message d'erreur est retourné concernant le type lors de la mise en correspondance à l'aide des opérateurs numériques.
Opérateur Description Exemple

=

Numérique, égal à

=,1,Value is 1

!=

Numérique, différent de

!=,1,Value is Not 1

>

Supérieur à la valeur indiquée

>,1,Value is above 1

<

Inférieur à la valeur indiquée

<,1,Value is below 1

>=

Supérieur ou égal à la valeur indiquée

>=,1,Value is equal or above 1

<=

Inférieur ou égal à la valeur indiquée

<=,1,Value is equal or below 1

BETWEEN

Entre les deux valeurs indiquées, toutes deux incluses

BETWEEN,1-10,Value is equal or above 1 and equal or below 10

> AND <

Supérieur à N1 et inférieur à N2

> AND <,1-10,Above 1 and below 10

>= AND <=

Identique à Entre. Supérieur ou égal à N1 et inférieur ou égal à N2

>= AND <=,1-10,Above or equal to 1 and below or equal to 10

>= AND <

Supérieur ou égal à N1 et inférieur à N2

>= AND <,1-10,Above or equal to 1 and below 10

> AND <=

Supérieur à N1 et inférieur ou égal à N2

> AND <=,1-10,Above 1 and below or equal to 10

> OR <

Supérieur à N1 ou inférieur à N2

> OR <,1-10

Supérieur à 1 ou inférieur à 10

>= OR <=

Supérieur ou égal à N1 ou inférieur ou égal à N2

>= OR <=,100-10,Above or equal to 100 or below or equal to 10

>= OR <

Supérieur ou égal à N1 ou inférieur à N2

>= OR <,10-1,Above or equal to 10 or below 1

> OR <=

Supérieur à N1 ou inférieur ou égal à N2

> OR <=,100-10,Above 100 or below or equal to 10

>= OR !=

Supérieur ou égal à N1 ou différent de N2

>= OR !=,10-1,Above or equal to 10 or not equal to 1

<= OR !=

Inférieur ou égal à N1 ou différent de N2

<= OR !=,10-100,Below or equal to 10 or not equal to 100

>= OR =

Supérieur ou égal à N1 ou égal à N2

>= OR =,10-1,Above or equal to 1 or equal to 1

<= OR =

Inférieur ou égal à N1 ou égal à N2

<= OR =,10-100,Below or equal to 10 or equal to 100

> AND !=

Supérieur à N1 et différent de N2

> AND !=,10-100,Above 10 and not equal to 100

< AND !=

Inférieur à N1 et différent de N2

< AND !=,10-1,Below 10 and not equal to 1

Utiliser des commentaires lors de la définition des consultations de dictionnaire

Utilisez # comme premier champ pour ajouter des commentaires à une consultation de dictionnaire. Voici un exemple de consultation avec commentaires :

Operator,Condition,Label,Module
# ----------------------------------
# Startup/Shutdown and Terminations
# ----------------------------------
CONTAINS,Server started in RUNNING mode,Server Started,WebLogic Server
CONTAINS,A critical service failed. The server will shut itself down,Server Shutdown,WebLogic Server
CONTAINS,state changed to FAILED,Server Failed,
CONTAINS,Removing .* from cluster view due to PeerGone,Cluster Removed,WebLogic Server
# ----------------------
# Connection Error / Timeouts and Slowness
# ----------------------
CONTAINS,Unable to connect to WSM policy manager,WSM Policy Manager Connection Error,
CONTAINS REGEX,java.sql.SQLTimeoutException: \S+: user requested cancel of current operation,SQL Timeout,Database
CONTAINS,This member is running extremely slowly and may endanger the rest of the cluster,WebLogic Cluster Slowness,WebLogic Server

Utiliser la consultation de dictionnaire dans une interrogation

Vous pouvez utiliser le même dictionnaire dans plusieurs interrogations. Par exemple, l'interrogation suivante applique le même dictionnaire au champ Message et affiche les résultats regroupés à l'aide de la visualisation Graphique à secteurs :

'Log Source' = 'Linux Syslog Logs'
| lookup table = 'Linux Error Categories' select Issue, Area using Message
| stats count by Area

Utiliser la consultation de dictionnaire dans une interrogation

Autoriser les utilisateurs à effectuer toutes les opérations sur les consultations

Type de ressource individuel : loganalytics-lookup

Partie du type de ressource agrégé : loganalytics-features-family

Énoncé de politique de ressource si la politique de famille n'est pas définie :

Cas d'utilisation Politiques GIA

La consultation peut se trouver dans la location

allow group <user_group> to READ loganalytics-lookup in tenancy

Restreindre l'autorisation pour la consultation à un compartiment spécifique.

allow group <user_group> to READ loganalytics-lookup in compartment <compartment_name>

Notez que pour que l'énoncé de politique ci-dessus limite l'autorisation à la ressource de consultation ayant la portée requise (location ou compartiment) pour fonctionner, il ne doit pas y avoir d'autres énoncés de politique qui couvrent la famille de types de ressource et une portée plus grande.

Note

Si vous voulez empêcher un utilisateur de voir le contenu d'une consultation, même indirectement, cet utilisateur NE DOIT PAS être autorisé à :

  • Charger les journaux
  • Voir les journaux contenant les champs enrichis à l'aide de ces consultations restreintes

Les opérations suivantes peuvent être effectuées avec chaque verbe lorsque vous créez une politique IAM pour loganalytics-lookup :

Inspect Read Use Manage

S.O

S.O

Enregistrer une consultation

Manage (Gérer) a le même niveau d'autorisations et d'opérations d'API que Use (Utiliser).

En général, seuls les administrateurs disposent des autorisations USE et MANAGE pour créer ou supprimer une consultation. Si vous voulez que les privilèges exécutent des interrogations de consultation, vous devez disposer de l'autorisation READ.

Énoncé de politique de famille agrégée qui couvre l'autorisation pour la ressource de consultation :

Cas d'utilisation Politiques GIA

La consultation peut se trouver dans la location

allow group <user_group> to read loganalytics-features-family in tenancy
Note

Si vous avez activé Oracle Logging Analytics à l'aide de l'interface utilisateur d'intégration qui est disponible lorsque vous naviguez vers le service pour la première fois, certaines politiques sont déjà créées. Voir Politiques créées lors de l'intégration de Logging Analytics.

Autorisations d'utilisation des ressources de consultation

En général, seuls les administrateurs disposent des autorisations USE et MANAGE pour créer ou supprimer une consultation. Si vous voulez que les privilèges exécutent des interrogations de consultation, vous devez disposer de l'autorisation READ.

Si vous utilisez déjà l'explorateur de journaux, les trousses SDK ou l'interface de ligne de commande pour exécuter les interrogations, vous disposez déjà des autorisations requises pour exécuter les commandes d'interrogation searchlookup ou lookup sur les consultations existantes définies par Oracle et créées par l'utilisateur.

Si vous utilisez un principal d'instance pour exécuter les interrogations, fournissez l'autorisation suivante si vous n'avez pas déjà fourni l'accès loganalytics-features-family au groupe dynamique :

Allow dynamic-group <dynamic-group-name> to {LOG_ANALYTICS_LOOKUP_READ} in tenancy

OU

Allow dynamic-group <dynamic-group-name> to {LOG_ANALYTICS_LOOKUP_READ} in compartment <compartment_name>