Cette page explique comment utiliser les audits Cloud Monitoring et Spanner. des journaux pour surveiller et analyser l'utilisation de Spanner Data Boost.
Cloud Monitoring permet de suivre l'utilisation totale dans le temps et de cette utilisation par utilisateur. Les journaux d'audit Spanner permettent une analyse flexible de l'utilisation, y compris en fournissant des métriques par utilisateur ou par ID de la tâche BigQuery.
Utiliser Cloud Monitoring pour suivre l'utilisation de Data Boost
Pour suivre l'utilisation globale de Data Boost:
- Dans Google Cloud Console, accédez à Monitoring.
Accéder à Monitoring - Si l'Explorateur de métriques s'affiche dans le menu de navigation, sélectionnez-le. Sinon, cliquez sur Ressources, puis sélectionnez Explorateur de métriques.
- En haut de la page, sélectionnez un intervalle de temps.
- Dans la liste déroulante Métrique, dans la section Filtrer par ressource ou par métrique
nom, saisissez
spanner
et appuyez surEnter
pour affiner la recherche. Dans la liste Métrique, sélectionnez Instance Cloud Spanner > Instance > Seconde unité de traitement, puis cliquez sur Appliquer.
Cela crée un graphique en courbes de l'utilisation agrégée de Data Boost sur toutes les instances Spanner.
Pour afficher l'utilisation d'une instance particulière, procédez comme suit:
- Cliquez sur + AJOUTER UN FILTRE pour créer un filtre.
- Dans la liste déroulante Étiquette 1, sélectionnez instance_id.
- Dans le champ de texte Valeur 1, saisissez ou sélectionnez l'ID de l'instance à afficher l'utilisation.
Pour afficher la répartition de l'utilisation par instance, procédez comme suit:
- Pour effacer tous les filtres, cliquez sur l'icône de la corbeille à côté de Filtres. .
- Sous Grouper par, dans la liste déroulante Étiquettes, sélectionnez instance_id. puis sélectionnez Somme dans la liste Fonction de regroupement.
Pour répartir l'utilisation par compte principal, sous Grouper par, sélectionnez credential_id dans la liste Libellés et Somme dans Liste des fonctions de regroupement.
L'exemple suivant montre l'unité de traitement en secondes par compte principal.
Utiliser les journaux d'audit pour analyser l'utilisation de Data Boost
Les journaux d'audit Spanner permettent une analyse plus flexible Utilisation de Data Boost. En plus de répartir l'utilisation au fil du temps par instance ou compte principal, comme avec Cloud Monitoring, Les journaux d'audit Spanner, s'ils sont activés et disponibles, permettent de répartir au fil du temps par base de données ou par ID de job BigQuery.
L'activation des journaux d'audit peut entraîner des frais supplémentaires. Pour en savoir plus sur Tarifs de Logging, consultez Tarifs de Google Cloud Observability: Cloud Logging.
Activer les journaux d'audit de l'utilisation de Data Boost
Vous devez activer les journaux d'audit des accès aux données pour Spanner avant de pouvoir collecter des données d'utilisation pour Data Boost. Pour cela, procédez comme suit :
- Suivez les instructions fournies dans l'article Configurez les journaux d'audit des accès aux données à l'aide de la console Google Cloud.
- Activez le type de journal Lecture de données pour le service API Spanner.
- Pour connaître l'utilisation de Data Boost par le biais du texte SQL du job BigQuery, procédez comme suit : et vérifier que les journaux d'audit pour BigQuery sont également activés.
Afficher l'utilisation par compte principal
Pour interroger les journaux d'audit et consulter l'utilisation de Data Boost par utilisateur, suivez procédez comme suit:
Accédez à l'explorateur de journaux dans la console Google Cloud.
Dans le menu de navigation, cliquez sur Analyse de journaux.
Pour afficher l'utilisation par utilisateur et par base de données au cours des sept derniers jours, exécutez la commande suivante : requête. Pour modifier la période d'affichage de l'utilisation, modifiez la Expression
timestamp
dans la clauseWHERE
.SELECT SUM(CAST(JSON_VALUE(labels.data_boost_usage) AS INT64)) AS usage, REGEXP_EXTRACT( proto_payload.audit_log.resource_name, 'projects/[^/]+/instances/[^/]+/databases/[^/]+') AS database, proto_payload.audit_log.authentication_info.principal_email AS principal_email FROM `PROJECT_NAME.global._Default._AllLogs` WHERE timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY) AND resource.type = 'spanner_instance' AND operation.last IS NULL AND JSON_VALUE(labels.data_boost_usage) != '' GROUP BY database, principal_email;
Remplacez
PROJECT_NAME
par le nom de votre projet.
L'exemple suivant illustre l'utilisation en unités de traitement pour quatre comptes principaux.
Afficher l'utilisation par ID de job BigQuery
À interroger les journaux d'audit pour afficher l'utilisation de Data Boost ventilée par l'utilisateur et l'ID de la tâche BigQuery, procédez comme suit:
Accédez à l'explorateur de journaux dans la console Google Cloud.
Dans le menu de navigation, cliquez sur Analyse de journaux.
Exécutez la requête suivante :
SELECT SUM(CAST(JSON_VALUE(labels.data_boost_usage) AS INT64)) AS usage, REGEXP_EXTRACT( proto_payload.audit_log.resource_name, 'projects/[^/]+/instances/[^/]+/databases/[^/]+') AS database, proto_payload.audit_log.authentication_info.principal_email AS principal_email, IFNULL(JSON_VALUE(labels.data_boost_workload_id), 'not from BQ') AS job_id FROM `PROJECT_NAME.global._Default._AllLogs` WHERE timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY) AND resource.type = 'spanner_instance' AND operation.last IS NULL AND JSON_VALUE(labels.data_boost_usage) != '' GROUP BY database, principal_email, job_id;
Remplacez
PROJECT_NAME
par le nom de votre projet.
L'exemple suivant illustre l'utilisation par ID de job BigQuery.
Afficher l'utilisation par texte SQL BigQuery
Afficher l'utilisation de Data Boost pour plusieurs jobs BigQuery agrégée par le texte SQL de ces tâches, procédez comme suit:
Accédez à l'explorateur de journaux dans la console Google Cloud.
Dans le menu de navigation, cliquez sur Analyse de journaux.
Exécutez la requête suivante :
SELECT SUM( CAST( JSON_VALUE(db.labels.data_boost_usage) AS INT64)) AS usage, JSON_VALUE( bq.proto_payload.audit_log.metadata.jobInsertion.job.jobConfig.queryConfig.query) AS bq_query FROM `PROJECT_NAME.global._Default._AllLogs` db, `PROJECT_NAME.global._Default._AllLogs` bq WHERE db.timestamp > TIMESTAMP_SUB( CURRENT_TIMESTAMP(), INTERVAL 7 DAY) AND db.resource.type = 'spanner_instance' AND JSON_VALUE(db.labels.data_boost_usage) != '' AND db.operation.last IS NULL AND bq.timestamp > TIMESTAMP_SUB( CURRENT_TIMESTAMP(), INTERVAL 7 DAY) AND bq.proto_payload.audit_log.method_name = 'google.cloud.bigquery.v2.JobService.InsertJob' AND bq.resource.type = 'bigquery_project' AND JSON_VALUE( bq.proto_payload.audit_log.metadata.jobInsertion.job.jobConfig.queryConfig.query) IS NOT NULL AND JSON_VALUE(db.labels.data_boost_workload_id) = REGEXP_EXTRACT(bq.proto_payload.audit_log.resource_name, '[^/]*$') GROUP BY bq_query ORDER BY usage DESC
Remplacez
PROJECT_NAME
par le nom de votre projet.
L'exemple suivant illustre l'utilisation de Data Boost par texte SQL.
Créer une alerte Data Boost
Pour créer une alerte envoyée lorsque l'utilisation de Data Boost dépasse un seuil prédéfini, consultez Définir une alerte pour l'utilisation de Data Boost
Étape suivante
- Pour en savoir plus sur Data Boost, consultez Présentation de Data Boost