Sobre as visualizações de análise

Este documento descreve as visualizações de análise e quando é recomendável criá-las. Ele também descreve as diferenças entre as visualizações do Analytics e conceitos que você já conhece, como visualizações de registros e consultas salvas.

Para saber como criar, consultar e gerenciar suas visualizações de análise, consulte Criar e consultar visualizações de análise.

Visão geral

Uma visualização do Google Analytics é um recurso que pode ser consultado. Esse recurso contém uma consulta SQL que consulta uma ou mais visualizações de registros.

Uma visualização de registros em um bucket de registros controla quais entradas de registro no bucket podem ser visualizadas. É possível consultar a visualização de registros com o Explorador de registros e as páginas da Análise de registros. Em ambos os casos, o formato dos dados consultados é determinado pela estrutura de dados LogEntry.

A consulta SQL contida em uma visualização de análise permite transformar os dados de registro em uma ou mais visualizações de registro para um formato personalizado. Ou seja, é possível filtrar quais entradas de registro na visualização de registros contribuem para o resultado da consulta e definir as colunas do resultado. Por exemplo, é possível descartar colunas, mover dados de um campo JSON aninhado para uma coluna ou adicionar colunas.

As visualizações do Google Analytics não são visualizações materializadas. Uma visualização do Google Analytics não é uma visualização pré-computada que armazena em cache periodicamente os resultados da consulta. Portanto, consultar uma visualização de análise é equivalente a consultar as visualizações de registros que ela consulta.

Uma visualização do Google Analytics e uma consulta salva contêm uma consulta SQL. No entanto, uma vista de análise é um recurso que pode ser consultado. É possível executar novamente uma consulta salva, mas não consultar o resultado dela.

Tipos de vistas do Google Analytics

Há dois tipos de visualizações de análise: definidas pelo usuário e definidas pelo sistema:

  • As visualizações de análise definidas pelo usuário são aquelas que você cria. É possível consultar, editar e excluir visualizações de análise definidas pelo usuário.

  • As visualizações de análise definidas pelo sistema são criadas pelos serviços do Google Cloud . É possível consultar visualizações de análise definidas pelo sistema. No entanto, não é possível editar ou excluir esses dados.

Para informações sobre como listar as visualizações do Analytics no seu projetoGoogle Cloud , consulte Listar visualizações do Analytics.

Local das visualizações de análise de dados

O local de uma visualização do Google Analytics é determinado pelo local dos recursos que ela consulta. Por exemplo, se uma vista do Google Analytics consultar uma vista de registros que esteja no local global, o local da vista do Google Analytics também precisará ser global. Quando você usa o console Google Cloud para criar uma vista de análise, o local é definido automaticamente.

Benefícios das visualizações de análise

O principal benefício das visualizações de análise é que você pode transformar os dados de registro e criar um esquema consistente para outras consultas. No entanto, você também pode descobrir que, ao criar uma vista de análise, é possível reduzir o esforço gasto na criação de consultas ou melhorar a estrutura delas. Como as visualizações de análise não são materializadas, o uso delas não reduz necessariamente o tempo de consulta.

Exemplo: transformação de dados

Suponha que você esteja analisando o desempenho da rede usando os registros de fluxo da VPC. É preciso analisar o desempenho geral da rede e identificar redes, endereços IP ou hosts específicos. Infelizmente, as informações necessárias estão contidas em campos aninhados no campo json_payload de uma entrada de registro.

Para extrair essas informações das entradas de registro, escreva a seguinte consulta e salve-a como uma visualização de análise chamada network_details:

SELECT
  JSON_VALUE(resource.labels.subnetwork_name) subnetwork_name,
  JSON_VALUE(json_payload.src_instance.vm_name) vm_name,
  JSON_VALUE(json_payload.connection.src_ip) as src_ip,
  JSON_VALUE(json_payload.connection.src_port) as src_port,
  JSON_VALUE(json_payload.connection.dest_ip) as dest_ip,
  JSON_VALUE(json_payload.connection.dest_port) as dest_port,
  CAST(JSON_VALUE(json_payload.bytes_sent) as INT64) as bytes_sent,
  CAST(JSON_VALUE(json_payload.packets_sent) as INT64) as packets_sent
FROM `TABLE_NAME_OF_LOG_VIEW`
WHERE
    log_id = "compute.googleapis.com/vpc_flows"
    AND SEARCH(json_payload.reporter, "SRC")

Quando quiser analisar a performance da rede, consulte sua vista de análise. Por exemplo, se você tiver interesse apenas no nome da instância e na quantidade de dados enviados, poderá escrever a seguinte consulta:

SELECT vm_name, bytes_sent, packets_sent,
FROM `analytics_view.my_project.global.network_details`
ORDER BY bytes_sent DESC
LIMIT 100

Exemplo: consulta básica para análise de latência da API

Suponha que você tenha a tarefa de avaliar e resumir a latência de solicitações para intervalos de uma semana. Outras equipes vão usar os dados da análise de desempenho semanal como base para outras análises.

A visualização do Google Analytics que você cria e que pode ser consultada por outras equipes informa a latência mínima, máxima e média das solicitações concluídas, conforme registrado pelas entradas de registro em uma visualização de registro específica:

SELECT week,MIN(took_ms) as min , MAX(took_ms) AS max, AVG(took_ms) AS avg
FROM (
  SELECT TIMESTAMP_TRUNC(timestamp, WEEK) AS week,
  CAST( JSON_VALUE(json_payload, '$."http.resp.took_ms"') AS INT64) as took_ms
  FROM `TABLE_NAME_OF_LOG_VIEW`
  WHERE json_payload IS NOT NULL
    AND SEARCH(labels,"frontend")
    AND JSON_VALUE(json_payload.message) = "request complete"
  ORDER BY took_ms DESC, timestamp ASC
)
GROUP BY week ORDER BY week

Permissões e papéis do IAM necessários

Como as visualizações de análise consultam visualizações de registros, para criar e consultar visualizações de análise, suas funções do IAM também precisam permitir que você consulte visualizações de registros e use a Análise de registros. Nesta seção, listamos as funções do IAM necessárias para criar visualizações de análise e aquelas necessárias para consultar visualizações de registros e usar a Análise de registros:

  • Para receber as permissões necessárias para criar, gerenciar e usar visualizações de análise, peça ao administrador para conceder a você o papel do IAM de Usuário da análise de observabilidade (roles/observability.analyticsUser) no seu projeto.

    Esse papel predefinido contém as permissões necessárias para criar, gerenciar e usar visualizações de análise. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:

    Permissões necessárias

    As seguintes permissões são necessárias para criar, gerenciar e usar visualizações de análise:

    • observability.analyticsViews.get
    • observability.analyticsViews.list
    • observability.analyticsViews.create
    • observability.analyticsViews.update
    • observability.analyticsViews.delete
  • Para ter as permissões necessárias para consultar uma visualização de registros e usar o Log Analytics, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:

    É possível restringir um principal a uma visualização de registros específica adicionando uma condição do IAM à concessão de função de visualizador de registros feita no nível do projeto ou adicionando uma vinculação do IAM ao arquivo de política da visualização de registros. Para mais informações, consulte Controlar o acesso a uma visualização de registro.

    Para informações sobre outros papéis necessários para consultar visualizações em buckets definidos pelo usuário ou para consultar a visualização _AllLogs do bucket de registros _Default, consulte Papéis do Cloud Logging.

Limitações

As seguintes limitações se aplicam às visualizações de análise:

  • Uma visualização do Google Analytics não pode consultar outra visualização do Google Analytics.
  • Uma visualização do Google Analytics pode consultar várias visualizações de registros. No entanto, os buckets de registros que hospedam as visualizações de registros consultadas precisam estar em um local. Por exemplo, suponha que você tenha dois buckets de registros, um em us-east1 e outro em asia-east1. Não é possível criar uma visualização de análise que consulte visualizações de registros nesses buckets.
  • O recurso pai de uma visualização de análise precisa ser um projeto do Google Cloud . Não é possível criar uma vista do Google Analytics em pastas ou organizações.
  • Não há suporte para conjuntos de dados vinculados em visualizações de análise. Portanto, só é possível consultar as visualizações de análise usando a página Análise de dados de registros. Além disso, é necessário executar essas consultas no serviço padrão do Cloud Logging.
  • Não há suporte de API para criar ou gerenciar visualizações de análise.
  • Os seguintes limites se aplicam às visualizações de análise:

    • Número máximo de visualizações do Google Analytics por projeto: 100 Google Cloud
    • Por projeto do Google Cloud , o número máximo de visualizações de análise por região é 50.
    • Por projeto do Google Cloud , o número máximo de regiões que podem armazenar visualizações de análise é 10.

A seguir