Ce document explique comment enregistrer et partager les requêtes que vous créez dans Observability Analytics.
Ce document suppose que vous connaissez Observability Analytics et que vous savez utiliser la page Observability Analytics pour interroger vos données de journal. Si ce n'est pas le cas, consultez Interroger et analyser les journaux.
Pour savoir comment représenter graphiquement les résultats de vos requêtes et comment enregistrer ces graphiques dans un tableau de bord personnalisé, consultez Représenter graphiquement les résultats d'une requête SQL.
Différences entre les requêtes enregistrées et les vues Analytics
Une requête enregistrée est une requête que vous exécutez à l'aide de la page Observability Analytics , puis que vous enregistrez en tant que requête. L'action d'enregistrement vous permet de réexécuter cette requête à votre convenance. Lorsque vous enregistrez la requête, vous pouvez la rendre privée ou la rendre visible aux autres utilisateurs disposant des autorisations nécessaires pour utiliser Observability Analytics. Vous ne pouvez pas écrire de requête SQL dans laquelle la clause FROM spécifie une requête enregistrée.
Une vue Analytics contient une requête que vous
pouvez réexécuter à votre convenance. Vous créez une vue Analytics en écrivant une requête SQL sur une vue de journal, puis en enregistrant le résultat en tant que vue.
Contrairement aux requêtes enregistrées, vous ne pouvez pas rendre une vue Analytics privée.
Vous pouvez interroger une vue Analytics.
Cette fonctionnalité vous permet de transformer vos données de journal du format LogEntry en un autre format plus adapté à vos besoins. Ensuite, au lieu d'écrire vos requêtes sur une vue de journal, vous interrogez la vue Analytics.
Vous pouvez enregistrer des requêtes qui interrogent une vue de journal ou une vue Analytics.
Avant de commencer
Cette section décrit les étapes que vous devez suivre avant de pouvoir utiliser Observability Analytics.
Configurer des buckets de journaux
Assurez-vous que vos buckets de journaux ont été mis à niveau pour utiliser Observability Analytics :
-
Dans la Google Cloud console, accédez à la page Stockage des journaux :
Accéder à la page Stockage des journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
- Pour chaque bucket de journaux comportant une vue de journal que vous souhaitez interroger, assurez-vous que la Observability Analytics disponible colonne affiche Ouvrir. Si Mettre à niveau s'affiche, cliquez sur Mettre à niveau , puis remplissez la boîte de dialogue.
Configurer des rôles et des autorisations IAM
Cette section décrit les rôles ou les autorisations IAM requis pour utiliser Observability Analytics :
-
Pour obtenir les autorisations nécessaires pour utiliser Observability Analytics et interroger des vues de journal, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet :
-
Pour interroger les buckets de journaux
_Requiredet_Default: Lecteur de journaux (roles/logging.viewer) -
Pour interroger toutes les vues de journal d'un projet :
Accesseur de vues de journaux (
roles/logging.viewAccessor)
Vous pouvez limiter un compte principal à une vue de journal spécifique en ajoutant une condition IAM à l'attribution du rôle Accesseur de vues de journaux effectuée au niveau du projet, ou en ajoutant une liaison IAM au fichier de stratégie de la vue de journal. Pour en savoir plus, consultez Contrôler l'accès à une vue de journal.
Il s'agit des mêmes autorisations que celles dont vous avez besoin pour afficher les entrées de journal sur la page Explorateur de journaux. Pour en savoir plus sur les rôles supplémentaires dont vous avez besoin pour interroger des vues sur des buckets définis par l'utilisateur ou pour interroger la vue
_AllLogsdu bucket de journaux_Default, consultez Rôles Cloud Logging. -
Pour interroger les buckets de journaux
-
Pour obtenir les autorisations nécessaires pour interroger des vues Analytics, demandez à votre administrateur de vous accorder le rôle IAM Utilisateur Observability Analytics (
roles/observability.analyticsUser) sur votre projet.
Sélectionner l'interface que vous prévoyez d'utiliser
Console
Lorsque vous utilisez la Google Cloud console pour accéder aux Google Cloud services et aux API, vous n'avez pas besoin de configurer l'authentification.
gcloud
Dans la Google Cloud console, activez Cloud Shell.
En bas de la Google Cloud console, une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement shell dans lequel Google Cloud CLI est déjà installé, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.
REST
Pour utiliser les exemples API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à la gcloud CLI.
Installez la Google Cloud CLI.
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l' Google Cloud authentification.
Enregistrer une requête
Toutes les requêtes que vous exécutez sont automatiquement enregistrées pendant 30 jours et sont accessibles en sélectionnant l'onglet Récentes sur la page Observability Analytics. Vous pouvez rechercher, afficher, exécuter et partager les requêtes listées dans l'onglet Récentes.
Pour réutiliser une requête, ajouter des descriptions personnalisées ou la partager avec des coéquipiers, enregistrez-la. Vous pouvez rechercher et trier vos requêtes enregistrées par nom, description et libellé de visibilité. Vous pouvez également modifier et supprimer ces requêtes. Les requêtes que vous enregistrez sont conservées jusqu'à ce que vous les supprimiez.
Vous pouvez enregistrer 10 000 requêtes par Google Cloud projet.
Console
Pour enregistrer une requête, procédez comme suit :
-
Dans la Google Cloud console, accédez à la manage_search page Observability Analytics :
Accéder à Observability Analytics
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Remplissez le volet Requête avec une requête.
Vous pouvez remplir le volet Requête en saisissant une nouvelle requête, en sélectionnant une requête dans l'onglet Récentes ou en sélectionnant une requête dans l'onglet Enregistrées.
Votre requête peut inclure n'importe quelle vue valide, plusieurs vues et des vues Analytics.
Lorsque la requête du volet Requête est valide, le bouton Enregistrer est activé.
Cliquez sur Enregistrer, sélectionnez Enregistrer la requête, puis remplissez les champs Nom et Description. Les valeurs que vous définissez pour ces champs s'affichent dans l'onglet Enregistrées.
Facultatif : Pour permettre à tous les utilisateurs ayant accès à la page Observability Analytics du Google Cloud projet d'afficher et d'exécuter votre requête enregistrée, activez le bouton Partager avec le projet.
Par défaut, ce bouton est désactivé et la visibilité est limitée à vous.
Cliquez sur Enregistrer la requête.
Facultatif : Pour afficher, trier et exécuter les requêtes enregistrées qui vous sont visibles, sélectionnez l'onglet Enregistrées.
Vous pouvez trier et filtrer vos requêtes enregistrées par nom, description et libellé de visibilité. Vous pouvez également filtrer par contenu de la requête.
Vous pouvez modifier et supprimer les requêtes que vous avez créées à l'aide des options de l'onglet Enregistrées :
Pour modifier une requête, cliquez sur more_vert Plus d'options , puis sélectionnez Modifier. Vous pouvez modifier les valeurs des champs Nom et Description ; toutefois, la requête elle-même ne peut pas être modifiée.
Pour supprimer une requête enregistrée, cliquez sur more_vert Plus d'options , puis sélectionnez Supprimer.
gcloud
Pour créer et enregistrer une requête, procédez comme suit :
-
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
- DISPLAY_NAME : nom à afficher de la requête enregistrée.
- LOCATION : emplacement de la requête enregistrée.
- VISIBILITY : définissez la valeur sur
privateoushared. - SQL_QUERY : requête SQL. Si des guillemets simples inversés
(`)entourent le chemin d'accès ou les champs du chemin d'accès, vous devez les échapper :"SELECT * FROM \`PROJECT_ID.LOCATION.my-log-bucket._AllLogs\`"ou
"SELECT * FROM \`PROJECT_ID.LOCATION._Trace.Spans._AllSpans\`"Les guillemets simples inversés
(`)sont obligatoires lorsqu'un élément de chemin d'accès contient un point(.). - ID : ID de la requête enregistrée. Cet ID est une entrée obligatoire pour les commandes qui décrivent, mettent à jour ou suppriment une requête enregistrée. Si vous ne fournissez pas l'ID lors de la création d'une requête enregistrée, le système génère un ID numérique.
- DESCRIPTION : description textuelle de la requête. Facultatif.
- PROJECT_ID : identifiant du projet.
Exécutez la
gcloud logging saved-queries createcommande :Linux, macOS ou Cloud Shell
gcloud logging saved-queries create --display-name=DISPLAY_NAME \ --location=LOCATION --visibility=VISIBILITY --sql-query-text=SQL_QUERY \ --id=ID --description=DESCRIPTION --project=PROJECT_ID
Windows (PowerShell)
gcloud logging saved-queries create --display-name=DISPLAY_NAME ` --location=LOCATION --visibility=VISIBILITY --sql-query-text=SQL_QUERY ` --id=ID --description=DESCRIPTION --project=PROJECT_ID
Windows (cmd.exe)
gcloud logging saved-queries create --display-name=DISPLAY_NAME ^ --location=LOCATION --visibility=VISIBILITY --sql-query-text=SQL_QUERY ^ --id=ID --description=DESCRIPTION --project=PROJECT_ID
Voici un exemple de réponse lorsque l'ID fourni dans la commande était
my-saved-query:Created saved query [projects/PROJECT_ID/locations/LOCATION/savedQueries/my-saved-query].
La réponse à la commande
createliste le nom complet de la requête, qui inclut son ID. L'ID de la requête, qui dans cet exemple estmy-saved-query, est une entrée obligatoire pour les commandes Google Cloud CLI qui décrivent, suppriment ou mettent à jour une requête enregistrée. Pour inspecter la requête enregistrée, exécutez la commande suivante :
gcloud logging saved-queries list --location=- --project=PROJECT_IDDans l'expression précédente, la valeur de l'emplacement est un trait d'union
(-), qui fait office de caractère générique. Vous pouvez également fournir un emplacement spécifique.
Il existe des commandes Google Cloud CLI pour supprimer, lister, décrire et mettre à jour les requêtes enregistrées. Pour en savoir plus, consultez la présentation de
gcloud logging saved-queries overview.
REST
Vous pouvez enregistrer une requête à l'aide de l'API Cloud Logging. Pour enregistrer une requête, utilisez la
savedQueries.create méthode.
Pour exécuter cette méthode, procédez comme suit :
- Sélectionnez
savedQueries.create. - Sur la page de référence, utilisez APIs Explorer pour
émettre une commande. Vous devez spécifier le champ
opsAnalyticsQuery.
L'exemple suivant illustre un corps de requête, qui contient une instance de SavedQuery :
{
"parent": "projects/my-project/locations/global"
"saved_query":
{
"ops_analytics_query":
{
"sql_query_text" :
"SELECT
timestamp, log_name, severity, json_payload, resource, labels
FROM
`VIEW`
WHERE
timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR)
ORDER BY timestamp ASC
LIMIT 100"
}
"visibility": "PRIVATE"
}
}
Partager une requête
Vous pouvez partager une requête enregistrée avec tous les utilisateurs ayant accès à votre Google Cloud projet. Toutefois, les rôles IAM du compte principal déterminent si la requête peut être exécutée et les données qu'elle renvoie.
Console
Lorsque vous résolvez un problème ou que vous constatez des résultats anormaux, vous pouvez partager une requête et ses résultats avec un coéquipier. Lorsque vous affichez les résultats d'une requête sur la page Observability Analytics, vous pouvez copier une URL qui, une fois ouverte, affiche la requête que vous avez exécutée et ses résultats.
Pour partager une requête et ses résultats avec un coéquipier, procédez comme suit :
-
Dans la Google Cloud console, accédez à la manage_search page Observability Analytics :
Accéder à Observability Analytics
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Remplissez le volet Requête avec une requête, puis cliquez sur Exécuter la requête.
Vous pouvez remplir le volet Requête en saisissant une nouvelle requête, en sélectionnant une requête dans l'onglet Récentes ou en sélectionnant une requête dans l'onglet Enregistrées.
Cliquez sur link Partager le lien.
Envoyez le lien à votre coéquipier.
Lorsque votre coéquipier ouvre le lien, la page Observability Analytics s'ouvre et affiche la requête, mais ne l'exécute pas. Votre coéquipier doit exécuter la requête manuellement.
La page Observability Analytics affiche une boîte de dialogue d'avertissement lorsque la requête s'exécute sur le moteur BigQuery et que les ressources interrogées ne se trouvent pas dans la même limite de propriété. Les limites de propriété sont déterminées par plusieurs facteurs, dont la hiérarchie des ressources utilisées par la requête.
Pour que votre coéquipier puisse ouvrir l'URL, son rôle IAM sur le Google Cloud projet doit inclure les autorisations requises pour afficher la page Observability Analytics.
gcloud
Lorsque vous souhaitez créer une requête enregistrée qui peut être exécutée par d'autres utilisateurs, définissez la valeur du champ visibility sur shared :
--visibility=shared
Pour modifier la visibilité d'une requête enregistrée existante, utilisez la commande update. Pour en savoir plus sur les commandes disponibles, consultez la présentation de
gcloud logging saved-queries overview.
REST
Vous pouvez utiliser l'API Logging pour créer une requête partagée à l'aide de la méthode savedQueries.create et en spécifiant la valeur SHARED dans le champ visibility. Pour en savoir plus, consultez la page de référence de
savedQueries.create.
Afficher et exécuter des requêtes récentes ou enregistrées
Pour afficher ou réexécuter une requête, sélectionnez l'onglet Récentes sur la page Observability Analytics , puis recherchez la requête :
- Pour exécuter la requête, cliquez sur Exécuter.
- Pour afficher la requête, utilisez les options du menu more_vert Plus d'options.
Pour afficher, modifier ou exécuter une requête enregistrée, sélectionnez l'onglet Enregistrées sur la page Observability Analytics, puis recherchez la requête :
- Pour exécuter la requête, cliquez sur Exécuter.
- Pour modifier, afficher ou supprimer la requête, utilisez les options du more_vert Plus d'options menu.
Étape suivante
- Créer et interroger des vues Analytics
- Exemples de requêtes SQL
- Représenter graphiquement les résultats d'une requête SQL
- Interroger un ensemble de données BigQuery associé dans BigQuery