Esta página descreve como usar o Cloud Monitoring e os registos de auditoria do Spanner para monitorizar e analisar a utilização do Spanner Data Boost.
O Cloud Monitoring oferece a capacidade de acompanhar a utilização total ao longo do tempo e de discriminá-la por utilizador. Os registos de auditoria do Spanner permitem uma análise de utilização mais flexível, incluindo o fornecimento de métricas por utilizador ou por ID da tarefa do BigQuery.
Use o Cloud Monitoring para acompanhar a utilização da Otimização de dados
Siga estes passos para acompanhar a utilização geral do aumento de dados:
- Na Google Cloud consola, aceda a Monitorização.
Aceder a Monitorização - Se o Explorador de métricas for apresentado no menu de navegação, selecione-o. Caso contrário, clique em Recursos e, de seguida, selecione Explorador de métricas.
- Na parte superior da página, selecione um intervalo de tempo.
- Na lista pendente Métrica, no campo Filtrar por nome do recurso ou da métrica, introduza
spanner
e primaEnter
para restringir a pesquisa. Na lista Métrica, selecione Instância do Cloud Spanner > Instância > Segundo da unidade de processamento e, de seguida, clique em Aplicar.
Isto cria um gráfico de linhas da utilização agregada do Data Boost em todas as instâncias do Spanner.
Para ver a utilização de uma instância específica, siga estes passos:
- Use o campo Filtro para adicionar filtros, como o ID da instância.
- Clique em + para adicionar outros atributos.
Para ver uma análise detalhada da utilização por todas as instâncias, siga estes passos:
- Limpe todos os filtros clicando no ícone X junto aos campos de filtro.
- Na lista pendente do operador Agregação, selecione Soma e, de seguida, selecione por instance_id.
Para discriminar a utilização por responsável, no menu pendente do operador Agregação, selecione Soma e, de seguida, selecione por credential_id.
Use registos de auditoria para analisar a utilização do aumento de dados
Os registos de auditoria do Spanner permitem uma análise mais flexível da utilização da Otimização de dados. Além da capacidade de discriminar a utilização ao longo do tempo por instância ou principal, como acontece com o Cloud Monitoring, os registos de auditoria do Spanner, se ativados e disponíveis, permitem discriminar a utilização ao longo do tempo por base de dados ou ID da tarefa do BigQuery.
A ativação dos registos de auditoria pode incorrer em custos adicionais. Para ver informações sobre os preços do Logging, consulte a secção Preços do Google Cloud Observability: Cloud Logging.
Ative os registos de auditoria de utilização do aumento de dados
Tem de ativar os registos de auditoria de acesso aos dados para o Spanner antes de poder recolher dados de utilização para o Data Boost. Para o fazer, siga estes passos:
- Siga as instruções em Configure os registos de auditoria de acesso a dados com a Google Cloud consola.
- Ative o tipo de registo Data Read para o serviço Spanner API.
- Para obter a utilização do Data Boost por texto SQL da tarefa do BigQuery, certifique-se de que os registos de auditoria do BigQuery também estão ativados.
Veja a utilização por responsável
Para consultar os registos de auditoria para ver a utilização do aumento de dados por utilizador, siga estes passos:
Aceda ao Explorador de registos na Google Cloud consola.
No menu de navegação, clique em Log Analytics.
Para mostrar a utilização por utilizador e base de dados nos últimos 7 dias, execute a seguinte consulta. Para alterar o período durante o qual a utilização é apresentada, modifique a expressão
timestamp
na cláusulaWHERE
.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;
Substitua
PROJECT_NAME
pelo nome do seu projeto.
O exemplo seguinte mostra a utilização em unidades de processamento para 4 responsáveis.
Veja a utilização por ID da tarefa do BigQuery
Para consultar os registos de auditoria para ver a utilização do Data Boost discriminada por base de dados, utilizador e ID da tarefa do BigQuery, siga estes passos:
Aceda ao Explorador de registos na Google Cloud consola.
No menu de navegação, clique em Log Analytics.
Execute a seguinte consulta:
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;
Substitua
PROJECT_NAME
pelo nome do seu projeto.
O exemplo seguinte mostra a utilização por ID da tarefa do BigQuery.
Veja a utilização por texto SQL do BigQuery
Para ver a utilização do Data Boost para várias tarefas do BigQuery agregadas pelo texto SQL dessas tarefas, siga estes passos:
Aceda ao Explorador de registos na Google Cloud consola.
No menu de navegação, clique em Log Analytics.
Execute a seguinte consulta:
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
Substitua
PROJECT_NAME
pelo nome do seu projeto.
O exemplo seguinte mostra a utilização da Otimização de dados por texto SQL.
Crie um alerta de aumento de dados
Para criar um alerta emitido quando a utilização da Otimização de dados excede um limite predefinido, consulte o artigo Defina um alerta para a utilização da Otimização de dados.
O que se segue?
- Saiba mais sobre o aumento de dados no artigo Vista geral do aumento de dados.