Créer et enregistrer des requêtes à l'aide du langage de requête Logging

Ce document explique comment récupérer et analyser les journaux lorsque vous utilisez le l'explorateur de journaux en rédigeant des requêtes dans le champ de l'éditeur de requête des sélections dans les menus de filtre à l'aide des options incluses dans les entrées de journal. La les requêtes que vous créez sont écrites Langage de requête Logging

Vous pouvez également enregistrer vos requêtes sur la page "Explorateur de journaux" ou à l'aide du Méthode savedQueries.create de l'API Logging.

Avant de commencer

  • Pour créer des requêtes, vous devez disposer des autorisations nécessaires pour lire les données des journaux. Ces autorisations sont incluses dans le rôle Lecteur de journaux (roles/logging.viewer). Pour en savoir plus sur les autorisations IAM nécessaires, consultez Autorisations pour la console Google Cloud.

  • Pour créer et utiliser des requêtes privées, votre rôle Identity and Access Management doit : inclure logging.queries.{list, create, get, update, delete} autorisations.

  • Pour créer et utiliser des requêtes partagées, votre rôle Identity and Access Management doit inclure le rôle logging.queries.{listShared, share, getShared, updateShared, deleteShared}.

Créer des requêtes

Pour créer des requêtes à l'aide de la console Google Cloud, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page Explorateur de journaux.

    Accéder à l'explorateur de journaux

    Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.

  2. Sélectionnez le projet Google Cloud ou un autre pour laquelle vous souhaitez afficher les journaux.

    Pour afficher les journaux que vous envoyez depuis Amazon Web Services (AWS) à Logging, sélectionnez Projet de connecteur AWS dans le sélecteur de ressources de la console Google Cloud, puis utilisez Explorateur de journaux : Le projet de connecteur AWS stocke le nom de ressource Amazon (ARN) de votre compte AWS et associe votre compte AWS aux services Google Cloud. Pour en savoir plus, consultez Collectez des métriques à partir de comptes AWS.
  3. Utilisez le volet Requête pour créer votre requête.

    Le volet de requête de l'explorateur de journaux.

    Le volet Requête propose plusieurs façons de créer et d'exécuter des expressions de requête:

    • Recherchez du texte dans tous les champs de journal.
    • Sélectionnez des options dans les menus de filtrage.
    • Rédigez ou modifiez des requêtes à l'aide de l'éditeur de requête.
    • Afficher, modifier ou exécuter les requêtes dans les onglets Récents, Enregistrés et Suggestions et Bibliothèque.

Rechercher du texte dans les champs de journal

Pour rechercher du texte dans tous les champs de journal et trouver toutes les entrées de journal correspondantes, entrez vos termes de recherche dans le champ de recherche:

Le champ de recherche de l'explorateur de journaux dans le volet de requête.

Vous pouvez rechercher des mots et des expressions, et vos termes de recherche peuvent inclure Opérateurs booléens et expressions régulières:

  • Pour effectuer une recherche sensible à la casse, vous devez utiliser une fonction expression régulière.

  • Pour effectuer une recherche non sensible à la casse le long des limites de jetons, saisissez le terme de recherche termes sans guillemets obliques ni guillemets doubles.

    Par exemple, pour rechercher les entrées de journal contenant le mot hello et le mot world, saisissez hello world. Cette commande, qui est convertie en SEARCH("hello world"), qui correspond aux entrées de journal contenant les jetons hello et world, dans n'importe quel ordre. Comme la recherche n'est pas sensible à la casse, la recherche correspond également à une entrée de journal contenant les jetons Hello et World La recherche ne correspond pas au jeton worlds.

  • Pour effectuer une recherche non sensible à la casse d'une expression le long des limites de jetons, procédez comme suit : entourez la phrase d’accents graves.

    Par exemple, pour rechercher l'expression hello world, saisissez `hello world`. Cette commande, qui est convertie en SEARCH("`hello world`"), correspond aux entrées de journal contenant le jeton hello world. La recherche ne correspond pas au jeton hello worlds.

  • Pour effectuer une recherche non sensible à la casse sur une sous-chaîne, entourez le texte de guillemets doubles. Par exemple, "hello world" correspond à Hello World et Hello world La même requête correspond également à hello worlds, car le la recherche ne s'effectue pas le long des limites de jetons.

Pour voir vos termes de recherche dans l'expression de requête, activez Afficher la requête.

Après avoir saisi vos termes de recherche, cliquez sur Exécuter la requête ou appuyez sur la touche Entrée . Les résultats de la requête sont affichés dans le volet Résultats de la requête.

Opérateurs booléens

Les entrées de votre champ de recherche sont converties en expressions booléennes spécifiant sous-ensemble de toutes les entrées de journal de la ressource Google Cloud sélectionnée.

Le champ de recherche prend en charge l'utilisation des opérateurs booléens AND, OR et NOT Lorsque vous utilisez des opérateurs booléens dans vos expressions de recherche, notez que suivantes:

  • Vous ne pouvez pas utiliser de parenthèses pour imbriquer des règles. Parenthèses dans la recherche sont analysées en tant que termes de recherche.
  • Vous devez mettre les opérateurs booléens en majuscules. and en minuscules, or, et not sont analysés en tant que termes de recherche, et non en tant qu'opérateurs.

Si vous n'incluez aucun opérateur, tous les termes et expressions de recherche sont reliés par AND Vous pouvez omettre l'opérateur AND entre les termes de recherche.

Les opérateurs AND et OR sont opérateurs de court-circuit. Vous pouvez combiner des règles AND et OR dans la même expression. Par exemple, lorsque les deux opérateurs sont mélangés, l'expression a AND b OR c AND d devient l'expression de langage de requête Logging suivante:

"a"
"b" OR "c"
"d"

L'opérateur NOT possède la priorité la plus élevée, suivi de OR et AND.

L'opérateur NOT effectue une négation du terme suivant. Par exemple : NOT error renvoie les entrées de journal qui ne contiennent pas error. Vous pouvez également remplacer l'opérateur NOT avec l'opérateur - (moins). Par exemple, les deux les requêtes sont identiques:

"response" AND "successful" AND NOT "error"
"response successful" -"error"

Cette logique fonctionne également avec une expression, si l'opérateur - (moins) se trouve en dehors de guillemets. Par exemple, les deux requêtes suivantes sont identiques:

-"response successful"
NOT "response successful"

Créer des requêtes à l'aide des menus de filtrage

Vous pouvez utiliser les menus de filtre du volet Requête pour ajouter une ressource, un nom de journal et journaliser les paramètres de gravité dans le champ de l'éditeur de requête. Ces options correspondent aux champs LogEntry de tous les journaux de Journalisation.

Les options des menus Ressource et Nom du journal sont issues de la classe les entrées de journal stockées par Cloud Logging.

Menus de filtre pour l'éditeur de requête

  • Ressource: permet de spécifier les paramètres resource.type et resource.labels associé. Vous pouvez sélectionner un seul type de ressource en utilisant ce menu de filtres, et zéro, un ou plusieurs libellés de ressources à appliquer à vos requête. Les paramètres de ressource sont joints par l'opérateur logique AND.
  • Log name (Nom de journal) : permet de spécifier le logName. Vous pouvez sélectionner plusieurs noms de journaux à appliquer à votre requête. Lorsque vous sélectionnez plusieurs journaux l'opérateur logique OR est utilisé.
  • Severity(Gravité) : permet de spécifier le niveau de gravité. Vous pouvez sélectionner plusieurs niveaux de gravité à ajouter en même temps à appliquer à votre requête. Lorsque vous sélectionnez plusieurs niveaux de gravité, l'opérateur logique OR est utilisé.

Pour utiliser l'un des menus de filtrage, procédez comme suit:

  1. Développez le menu sur n'importe quelle page des menus de filtre du volet Requête.

  2. Affinez les paramètres de filtre.

  3. Cliquez sur Appliquer. Les paramètres s'affichent dans le champ de l'éditeur de requête.

    Pour voir vos termes de recherche dans l'expression de requête, activez Afficher la requête.

  4. Après avoir examiné la requête, cliquez sur Run query (Exécuter la requête). Les résultats de la requête s'affichent dans le volet Résultats de la requête.

Pour certains types de ressources Compute Engine, tels que gce_instance et gce_network, vous voyez le nom de la ressource avec l'ID de ressource comme sous-texte. Pour Par exemple, pour le type de ressource gce_instance, vous voyez le nom de la VM à côté de l'ID de la VM. Les noms de ressources vous aident à identifier sur lequel vous pouvez créer des requêtes.

Afficher les journaux par période

Il existe deux façons d'afficher les journaux écrits au cours d'une période spécifique:

  1. Utilisez le sélecteur de période.
  2. Incluez une expression de code temporel dans le champ de l'éditeur de requête.

Utiliser le sélecteur de période

La période par défaut est d'une heure, mais vous pouvez choisir l'une des options prédéfinies, définir des heures de début et de fin personnalisées, ou centrer la période sur un à l'aide du sélecteur de période. Par exemple, si vous souhaitez afficher les données de la semaine passée, puis sélectionnez La semaine dernière dans la période. sélecteur.

Vous pouvez également définir vos préférences de fuseau horaire à l'aide du sélecteur de période.

Inclure une expression de code temporel dans le champ de l'éditeur de requête

Pour ajouter une expression de code temporel directement dans le champ de l'éditeur de requête, utilisez la Langage de requête Logging

Si le champ de l'éditeur de requête contient une expression avec un code temporel, alors le le sélecteur de période est désactivé, et la requête utilise l'expression de code temporel en tant que la restriction de période. Si une requête n'utilise pas d'expression de code temporel, alors La requête utilise le sélecteur de période comme restriction de période.

Écrire des requêtes avancées à l'aide du langage de requête Logging

Vous pouvez utiliser le langage de requête Logging pour créer des requêtes plus avancées dans le champ de l'éditeur de requête de l'explorateur de journaux:

  1. Si vous ne voyez pas le champ de l'éditeur de requête dans le volet Requête, activez Afficher la requête

  2. Saisissez vos expressions de requête directement dans le champ de l'éditeur de requête.

    Si vous avez ajouté des termes de recherche dans le champ de recherche ou sélectionné dans les menus de filtrage, ils apparaissent également dans le query-editor et sont évaluées comme faisant partie de votre expression de requête.

  3. Après avoir examiné votre requête, cliquez sur Exécuter la requête.

    Les journaux correspondant à votre requête sont répertoriés sous la section Résultats de la requête volet. La Histogramme et Champs de journal les volets s'ajustent également en fonction de l'expression de requête.

Pour obtenir des exemples de requêtes courantes que vous pouvez utiliser, consultez la page Exemples de requêtes avec l'explorateur de journaux.

Utiliser des requêtes récentes

Lorsque vous exécutez une requête, elle est ajoutée à votre liste de requêtes récentes. qui contient les 10 000 dernières requêtes uniques effectuées sur une période de 30 jours.

Pour afficher vos requêtes récentes, sélectionnez l'onglet Récents du volet Requête. Dans l'onglet Récents, vous disposez des options suivantes:

  • Flux: pour exécuter la requête et diffuser les résultats en streaming, sélectionnez cette option. .
  • Exécuter: sélectionnez cette option pour exécuter la requête.
  • Autres options: Permet d'afficher l'expression de requête avec les options permettant d'exécuter la requête ou d'enregistrer l'ajouter à votre liste de requêtes enregistrées. Vous pouvez aussi directement sélectionner la requête pour obtenir ces options.

    Pour enregistrer la requête, procédez comme suit:

    1. Cliquez sur Enregistrer sous. La boîte de dialogue Enregistrer la requête s'ouvre.
    2. Remplissez les champs suivants :

      • Nom (obligatoire): indiquez le nom de votre requête. Les noms sont limités aux 64 caractères.
      • Description (facultatif) : fournissez une description vous permettant d'identifier l'objectif de la requête.
      • Inclure des champs de résumé (facultatif): activez l'option Inclure des champs de résumé. et saisissez les champs de résumé que vous souhaitez afficher.
      • Tronquer les champs de résumé (facultatif): activer Tronquer les champs de résumé et sélectionner le nombre de caractères à et indique si la troncation se produit au début ou à la fin de la .
    3. Cliquez sur Enregistrer la requête. La requête est maintenant disponible dans la liste des requêtes enregistrées.

Vous pouvez également trier et filtrer vos requêtes récentes : le filtre correspond au texte dans votre expression de requête.

Enregistrer et partager des requêtes

Les requêtes enregistrées vous permettent de stocker des expressions de requête afin d'explorer davantage vos journaux de manière cohérente et efficace. Le volet Requête de l'explorateur de journaux comporte un onglet Enregistrées qui vous permet d'accéder à vos requêtes enregistrées. Vous pouvez également enregistrer vos requêtes à l'aide de la méthode de l'API Logging ; savedQueries.create

Vous pouvez enregistrer votre requête afin qu'elle soit privée et visible uniquement par vous, ou par vous-même. le partager avec d'autres membres du projet Google Cloud. Une fois que vous avez partagé une requête, celle-ci n'est plus détenue ni par vous, ni par aucun des membres du projet. disposant des autorisations nécessaires pour accéder à la requête.

Console

Pour enregistrer une expression de requête que vous avez créée dans le champ de l'éditeur de requête, exécutez la suivantes:

  1. Cliquez sur Enregistrer dans le volet Requête. La boîte de dialogue Enregistrer la requête s'ouvre. par votre expression de requête dans le champ de l'éditeur de requête.

  2. Remplissez les champs suivants :

    • Nom (obligatoire): indiquez le nom de votre requête. Les noms sont limités aux 64 caractères.
    • Description (facultatif) : fournissez une description vous permettant d'identifier l'objectif de la requête.
    • Inclure des champs de résumé personnalisés (facultatif): activez l'option Inclure un résumé. champs et saisissez les champs de résumé souhaités à afficher.
    • Tronquer les champs de résumé (facultatif): activer Tronquer les champs de résumé et sélectionner le nombre de caractères à et indique si la troncation se produit au début ou à la fin de la .
    • Partager avec le projet: vous pouvez éventuellement activer l'option Partager avec le projet pour partager votre requête avec d'autres membres du projet Google Cloud.
  3. Cliquez sur Enregistrer la requête. Vos requêtes enregistrées apparaissent dans un dans l'onglet Enregistrés.

Pour exécuter une requête enregistrée, cliquez sur Exécuter. Pour exécuter la requête et diffuser les résultats, cliquez sur Flux.

Vous pouvez également trier et filtrer vos requêtes enregistrées : le filtre correspond au texte dans votre expression de requête.

API

Pour enregistrer une requête à l'aide de l'API Logging, utilisez la méthode savedQueries.create. Pour en savoir plus sur cette méthode, et les données de réponse, consultez la page de référence savedQueries.create.

Vous pouvez exécuter la méthode savedQueries.create à l'aide de la méthode Widget APIs Explorer sur la page de référence de la méthode. Pour les requêtes de l'Explorateur de journaux, vous devez spécifier le loggingQuery . L'exemple suivant illustre un exemple de corps de requête, qui contient une instance de SavedQuery:

{
"parent": "projects/my-project/locations/global"
"savedQueryId": "compute-query"
{
  "displayName": "compute-admin-activity-query",
  "description": "Queries for Compute Engine Admin Activity logs.",

  "loggingQuery":
    {
      "filter": resource.type="gce_instance" AND log_id("cloudaudit.googleapis.com/activity"),
    },
  "visibility": "PRIVATE"
}
}

Pour partager la requête avec d'autres membres du projet Google Cloud, spécifiez une valeur SHARED dans le champ visibility.

  1. Saisissez une requête dans le champ de l'éditeur de requête.

  2. Cliquez sur Enregistrer.

  3. Renseignez les champs de la boîte de dialogue Enregistrer la requête.

  4. Activez l'option Share with project.

  5. Cliquez sur Enregistrer la requête.

Votre requête est désormais partagée avec d'autres utilisateurs du projet Google Cloud.

Pour partager une requête déjà enregistrée, procédez comme suit:

  1. Sélectionnez l'onglet Saved (Éléments enregistrés).
  1. Sélectionnez Plus d'options , puis cliquez sur Modifier ou sélectionnez la requête directement.

  2. Renseignez la boîte de dialogue Modifier la requête.

    Par exemple, pour partager une requête avec d'autres membres, activez Share with project (Partager avec le projet), puis cliquez sur Update query (Mettre à jour la requête).

Afficher les requêtes enregistrées

Vous pouvez afficher les requêtes privées et celles partagées avec d'autres membres dans l'onglet Saved (Enregistrés) du projet Google Cloud:

Console

  1. Dans la console Google Cloud, accédez à la page Explorateur de journaux.

    Accéder à l'explorateur de journaux

    Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.

  2. Sélectionnez le projet Google Cloud ou un autre pour laquelle vous souhaitez afficher les journaux.

  3. Cliquez sur All (Tous).

  4. Triez la colonne Visibility.

La colonne Visibilité indique si et comment les requêtes sont partagées:

La colonne Visibilité indique si les requêtes sont partagées:

  • Partagées: requêtes partagées avec d'autres membres du projet Google Cloud.
  • Privé: requêtes que vous avez enregistrées et qui ne sont visibles que par vous.

API

L'API Logging vous permet d'afficher les journaux privés et partagés à l'aide de la méthode savedQueries.list.

Par exemple, le corps de requête suivant répertorie tous les explorateurs de journaux partagés Requêtes comportant un identifiant de zone géographique générique:

{
"parent": "name": projects/PROJECT_ID/locations/-
    "visibility": "SHARED"
    "filter": "explorer"
}

Utiliser les requêtes suggérées

Logging génère des suggestions de requêtes en fonction du contexte projet Google Cloud, comme les produits Google Cloud que vous utilisez. Les requêtes suggérées peuvent vous aider à identifier les problèmes et vous fournir des insights dans l'état général de vos systèmes. Par exemple, si vous détectez à l'aide de Google Kubernetes Engine, Logging peut suggérer une requête qui trouve tous les journaux d'erreurs de vos conteneurs.

Pour afficher et exécuter des requêtes suggérées, sélectionnez l'onglet Suggestions dans le Volet Requête. L'onglet Suggestions affiche une liste de requêtes, chacune avec descriptions et les options suivantes:

  • Flux: pour exécuter la requête et diffuser les résultats en streaming, sélectionnez cette option. .
  • Exécuter: sélectionnez cette option pour exécuter la requête.
  • Autres options: Permet d'afficher les détails de l'expression de requête ainsi que les options permettant d'exécuter la ou l'enregistrer. Vous pouvez aussi directement sélectionner la requête pour obtenir ces options.

    Pour examiner les détails d'une requête suggérée, effectuez l'une des opérations suivantes:

    • Sélectionnez la ligne de la requête.

    • Cliquez sur Plus. et sélectionnez Afficher. La boîte de dialogue Détails de la requête s'ouvre.

    Dans la boîte de dialogue Détails de la requête, la requête et les options permettant d'exécuter s'affichent. Flux ou Enregistrer sous:

    • Pour enregistrer la requête, procédez comme suit:

      1. Cliquez sur Enregistrer sous.
      2. Renseignez les champs de la boîte de dialogue Enregistrer la requête.

      La requête modifiée s'affiche dans la liste Enregistrée, où vous pouvez choisir de exécuter la requête ultérieurement.

    • Pour exécuter la requête maintenant, cliquez sur Exécuter. La requête est exécutée et apparaît dans "query-editor".

    • Pour exécuter la requête maintenant et diffuser les résultats en direct, cliquez sur Diffuser.

    • Pour fermer la boîte de dialogue et revenir à la liste des requêtes suggérées, cliquez sur Fermer.

Notez les comportements attendus suivants:

  • Les chargements de page successifs peuvent ne pas afficher les mêmes requêtes dans le même ordre.
  • Il est possible qu'aucune requête suggérée ne s'affiche.
  • Parfois, l'exécution d'une requête suggérée ne renvoie aucun journal.

Sélectionner des requêtes dans la bibliothèque

Logging fournit une bibliothèque de requêtes basées sur une utilisation courante et les produits Google Cloud. Ces requêtes peuvent vous aider de rechercher des journaux lors de sessions de dépannage urgentes et de les explorer. pour mieux comprendre quelles données de journalisation sont disponibles.

Pour afficher et exécuter les requêtes de la bibliothèque, procédez comme suit:

  1. Sélectionnez l'onglet Bibliothèque dans le volet Requête.

  2. La colonne Toutes les requêtes présente de nombreuses catégories requêtes et sous-ensembles de requêtes basés sur les produits Google Cloud. Pour affiner la sélection de requêtes, cliquez sur l'une des produits.

    Vous pouvez également utiliser le champ de recherche pour rechercher les requêtes disponibles en la catégorie, la description ou le contenu de l'expression de requête.

  3. Pour examiner une expression de requête, effectuez l'une des opérations suivantes:

    a. Cliquez sur la ligne de la requête.

    b. Cliquez sur Plus et sélectionnez Afficher.

  4. Dans la boîte de dialogue Détails de la requête, la requête et les options permettant de Exécuter, Diffuser en streaming ou Enregistrer sous:

    • Pour enregistrer la requête, procédez comme suit:

      1. Cliquez sur Enregistrer sous.
      2. Renseignez les champs de la boîte de dialogue Enregistrer la requête.

      La requête modifiée s'affiche dans la liste Enregistrée, où vous pouvez choisir de exécuter la requête ultérieurement.

    • Pour exécuter la requête maintenant, cliquez sur Exécuter. La requête est exécutée et apparaît dans "query-editor".

    • Pour exécuter la requête maintenant et diffuser les résultats en direct, cliquez sur Diffuser.

    • Pour fermer la boîte de dialogue et revenir à la liste des requêtes suggérées, cliquez sur Fermer.

Étape suivante