Vous pouvez créer un ensemble de données BigQuery associé à votre ensemble de données d'observabilité, ce qui vous permet d'utiliser les services BigQuery pour interroger vos données de trace. Vous pouvez ensuite joindre les données de trace à des ensembles de données métier et analyser les étendues à l'aide de BigQuery Studio ou de l'API BigQuery.
Vous n'avez pas besoin d'un ensemble de données BigQuery associé pour analyser vos données de trace avec SQL si vous utilisez Observability Analytics. Vous pouvez également joindre vos données de trace et de journaux lorsque vous utilisez Observability Analytics. Pour en savoir plus, consultez Interroger et analyser des traces avec SQL et Interroger et analyser des journaux avec Observability Analytics.
Quand avez-vous besoin d'un ensemble de données associé ?
Vous avez besoin d'un ensemble de données BigQuery associé lorsque vous souhaitez effectuer l'une des opérations suivantes :
- Joindre des données de trace à d'autres ensembles de données BigQuery.
- Interroger des données de trace à partir d'un autre service, tel que BigQuery Studio ou Data Studio.
Exécuter des requêtes à partir de la page Observability Analytics sur le moteur BigQuery.
La page Observability Analytics exécute automatiquement des requêtes sur le moteur de requêtes par défaut, qui utilise des emplacements sans frais. Toutefois, vous pouvez configurer cette page pour exécuter des requêtes sur le moteur BigQuery.
Surveillez les résultats de vos requêtes SQL à l'aide d'une règle d'alerte.
Créer un ensemble de données BigQuery associé
Cette section explique comment créer un ensemble de données BigQuery associé à un ensemble de données d'observabilité, ce qui vous permet d'utiliser les services BigQuery pour interroger vos données de trace. Chaque ensemble de données d'observabilité est compatible avec un ensemble de données BigQuery associé.
Lorsque vous créez un ensemble de données associé, vous lancez une opération de longue durée. Plusieurs actions se produisent dans le cadre de cette opération :
- Les journaux d'audit enregistrent la demande de création d'un lien et la fin de l'opération.
Lorsque le compte de service Monitoring n'existe pas, Google Cloud Observability le crée.
L'API Cloud Monitoring doit être activée pour que ce compte de service puisse être créé.
Google Cloud Observability nécessite un compte de service avant de pouvoir créer un ensemble de données associé. Si nécessaire, un compte de service est créé :
Compte de service Cloud Observability: requis pour un lien sur un ensemble de données d'observabilité.
Compte de service Cloud Logging: requis pour un lien sur un bucket de journaux.
Un journal d'audit enregistre la requête du gestionnaire d'agents de service visant à accorder au compte de service Monitoring le rôle IAM d' agent de service Monitoring.
Avant de commencer
- Connectez-vous à votre Google Cloud compte. Si vous n'avez jamais utilisé Google Cloud, créez un compte pour évaluer les performances de nos produits dans des scénarios réels. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Monitoring and Observability APIs.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Monitoring and Observability APIs.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Pour obtenir les autorisations nécessaires pour créer un lien sur un ensemble de données d'observabilité, demandez à votre administrateur de vous accorder le rôle IAM Éditeur Observability (
roles/observability.editor) sur votre projet. Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Créer un ensemble de données
gcloud
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
- LINK_ID : nom de l'ensemble de données BigQuery.
- DATASET_ID : ID de l'ensemble de données. Vos données de trace sont stockées dans un ensemble de données nommé
Spans. - BUCKET_ID : ID du bucket d'observabilité. Par exemple, cet ID peut être
_Trace. - LOCATION : emplacement des buckets d'observabilité.
- PROJECT_ID : identifiant du projet.
Exécutez la
gcloud beta observability buckets datasets links create
commande :
Linux, macOS ou Cloud Shell
gcloud beta observability buckets datasets links create \ projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID \ --dataset=DATASET_ID\ --bucket=BUCKET_ID \ --location=LOCATION \ --project=PROJECT_ID
Windows (PowerShell)
gcloud beta observability buckets datasets links create ` projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID ` --dataset=DATASET_ID` --bucket=BUCKET_ID ` --location=LOCATION ` --project=PROJECT_ID
Windows (cmd.exe)
gcloud beta observability buckets datasets links create ^ projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID ^ --dataset=DATASET_ID^ --bucket=BUCKET_ID ^ --location=LOCATION ^ --project=PROJECT_ID
La commande create lance une opération de longue durée. Voici un exemple de réponse lorsque la commande réussit :
Create request issued for: [mydataset] Waiting for operation [projects/my-project/locations/us/operations/operation-1775164903749-64e80c9817833-9ff804b6-c3e9cbe7] to complete...done. Created link [mydataset].
REST
Pour créer un lien vers un ensemble de données BigQuery, envoyez une requête au
projects.locations.buckets.datasets.links.create
point de terminaison.
Vous devez spécifier le paramètre parent, qui se présente comme suit :
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID
Les champs de l'expression précédente ont la signification suivante :
- PROJECT_ID : identifiant du projet.
- LOCATION : l'emplacement du bucket d'observabilité.
- BUCKET_ID : ID du bucket d'observabilité. Par exemple, cet ID peut être
_Trace. - DATASET_ID : ID de l'ensemble de données interrogé. Par exemple, cet ID peut être
Spans.
Cette commande nécessite un paramètre de requête et un corps de requête :
Le paramètre de requête
linkIddoit être spécifié et défini sur le nom de l'ensemble de données BigQuery. Exemple :linkId="my_link". Le nom de l'ensemble de données BigQuery doit être unique pour votre Google Cloud projet, ne doit pas dépasser 100 caractères et ne peut inclure que des lettres, des chiffres et des traits de soulignement.Le corps de la requête est un
Linkobjet. La valeur du champnamese présente comme suit :projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_IDLa valeur que vous fournissez pour le champ
namedoit correspondre à l'ensemble de données BigQuery associé référencé par le paramètre de requête.Le champ LINK_ID correspond au nom de l'ensemble de données BigQuery.
La réponse est un Operation objet.
Cet objet contient des informations sur la progression de la méthode. Une fois la méthode terminée, l'objet Operation contient des données d'état.
Pour obtenir la liste complète des points de terminaison de l'API Observability, consultez la documentation de référence de l'API Observability.
Si vous rencontrez des erreurs d'autorisation lors de la création d'un ensemble de données associé, consultez Résoudre les erreurs d'autorisation.