Este documento descreve como criar gráficos com os resultados da consulta do Log Analytics, o que lhe permite identificar padrões e tendências nos dados de registo. A análise de registos permite-lhe pesquisar e agregar registos para gerar estatísticas úteis através de consultas SQL.
Depois de executar uma consulta, os resultados da consulta podem ser vistos numa tabela ou convertidos num gráfico. Além disso, a consulta e a respetiva visualização podem ser guardadas num painel de controlo.
Por exemplo, para ver que tipos de gravidade os seus registos estão a gerar, crie um gráfico que apresente as contagens de registos gerados nas últimas 12 horas e discrimine os registos por severity
. A captura de ecrã
seguinte ilustra os pontos de dados divididos em diferentes tipos de gravidade:
Antes de começar
Esta secção descreve os passos que tem de concluir antes de poder usar a Log Analytics.
Configure contentores de registos
Certifique-se de que os contentores de registos foram atualizados para usar o Log Analytics:
-
Na Google Cloud consola, aceda à página Armazenamento de registos:
Aceda a Armazenamento de registos
Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cuja legenda é Registo.
- Para cada contentor de registos que tenha uma visualização de registos que quer consultar, certifique-se de que a coluna Log Analytics disponível apresenta Abrir. Se for apresentado o botão Atualizar, clique nele e preencha a caixa de diálogo.
Configure funções e autorizações do IAM
Esta secção descreve as funções ou as autorizações da IAM necessárias para usar o Log Analytics:
-
Para receber as autorizações de que precisa para usar o Log Analytics e consultar visualizações de registos, peça ao seu administrador que lhe conceda as seguintes funções de IAM no seu projeto:
-
Para consultar os contentores de registos
_Required
e_Default
: Visualizador de registos (roles/logging.viewer
) -
Para consultar todas as vistas de registos num projeto:
Aceder à vista de registos (
roles/logging.viewAccessor
)
Pode restringir um principal a uma vista de registos específica adicionando uma condição de IAM à concessão da função Logs View Accessor feita ao nível do projeto ou adicionando uma associação de IAM ao ficheiro de política da vista de registos. Para mais informações, consulte o artigo Controle o acesso a uma vista de registo.
Estas são as mesmas autorizações de que precisa para ver entradas de registo na página do Explorador de registos. Para ver informações sobre funções adicionais necessárias para consultar visualizações em contentores definidos pelo utilizador ou para consultar a visualização
_AllLogs
do contentor de registos_Default
, consulte Funções do Cloud Logging. -
Para consultar os contentores de registos
-
Para receber as autorizações de que precisa para consultar visualizações de propriedade do Analytics, peça ao seu administrador para lhe conceder a função de IAM Utilizador do Observability Analytics (
roles/observability.analyticsUser
) no seu projeto. -
Para receber as autorizações de que precisa para criar gráficos, peça ao seu administrador para lhe conceder a função de IAM Editor de monitorização (
roles/monitoring.editor
) no seu projeto.
Selecione os dados a representar no gráfico
Para configurar os dados a apresentar num gráfico, crie uma consulta através de SQL. Quando seleciona o separador Gráfico, é apresentado um gráfico com os resultados da consulta. Depois de executar a consulta e gerar um gráfico, pode personalizar a configuração do gráfico alterando o tipo de gráfico e selecionando colunas para ver dados diferentes.
Para ver os resultados da consulta como um gráfico, execute uma consulta fazendo o seguinte:
-
Na Google Cloud consola, aceda à página Log Analytics:
Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cuja legenda é Registo.
No painel Consulta, introduza uma consulta e, de seguida, clique em Executar.
Após a conclusão da consulta, no separador Resultados, selecione como quer ver os resultados da consulta:
Tabela: apenas formato tabular.
Gráfico: apenas formato de gráfico
Ambos: formato de gráfico e tabular.
Depois de selecionar como ver os resultados da consulta, pode configurar quaisquer campos para a visualização selecionada e, em seguida, guardar a consulta e os resultados num painel de controlo personalizado. O formato guardado é tabular quando seleciona a opção Tabela. Caso contrário, o formato é um gráfico.
Para os gráficos, as opções de visualização permitem-lhe selecionar o tipo de gráfico e selecionar as linhas e as colunas que são representadas no gráfico. Para mais informações acerca da configuração do gráfico, consulte Personalize a configuração do gráfico.
Personalize a configuração do gráfico
Pode personalizar a configuração do gráfico alterando o tipo de gráfico, selecionando a dimensão e a medida a representar no gráfico e aplicando uma discriminação. A dimensão é usada para agrupar ou categorizar linhas e é o valor do eixo X. A Medida, ou o valor do eixo Y, é uma série de dados representada em função do eixo Y.
Alterar tipo de gráfico
Pode selecionar entre os seguintes tipos de gráficos, consoante o tipo de linhas e colunas que selecionou como dimensão e medida, e como quer que esses dados sejam visualizados.
Gráfico de barras (predefinição): Os gráficos de barras representam dados em dois eixos. Se o seu gráfico usar uma categoria ou uma string como dimensão, pode definir a configuração do gráfico de barras como horizontal ou vertical, em que os eixos de dimensão e de medida são trocados.
Gráfico de linhas: os gráficos de linhas podem ser usados para mostrar alterações de dados ao longo do tempo. Quando usa um gráfico de linhas, cada série cronológica é apresentada por uma linha diferente que corresponde às medidas que selecionou.
Se o eixo X for baseado no tempo, cada ponto de dados é colocado no início de um intervalo de tempo. Cada ponto de dados está ligado por interpolação linear.
Gráfico de áreas sobrepostas: um gráfico de áreas baseia-se num gráfico de linhas e a área abaixo de cada linha é sombreada. Nos gráficos de áreas, as séries de dados são empilhadas. Por exemplo, se tiver duas séries idênticas, as séries sobrepõem-se num gráfico de linhas, mas a área sombreada é empilhada num gráfico de áreas.
Gráfico circular ou de anel: um gráfico circular mostra como as categorias num conjunto de dados se relacionam com o conjunto de dados completo, usando um círculo para representar o conjunto de dados completo e cunhas no círculo para representar as categorias no conjunto de dados. O tamanho de uma fatia indica a contribuição da categoria para o todo, muitas vezes como uma percentagem.
Tabela: Uma tabela mostra uma linha para cada linha no resultado da consulta. As colunas na tabela são definidas pela cláusula
SELECT
. Se planeia apresentar dados em formato tabular num painel de controlo, use uma cláusulaLIMIT
para restringir o número de linhas no resultado a menos de algumas centenas.Indicador ou tabela de dados: os indicadores e as tabelas de dados fornecem-lhe o valor mais recente juntamente com uma indicação verde, âmbar ou vermelha com base na comparação desse valor com um conjunto de limites. Ao contrário dos indicadores, que apenas mostram informações sobre o valor mais recente, as tabelas de dados também podem incluir informações sobre valores anteriores.
Os indicadores e os cartões de pontuação só podem apresentar o resultado da consulta quando o resultado da consulta contém, pelo menos, uma linha e essa linha contém uma coluna com uma data/hora e uma coluna com dados numéricos. O resultado da consulta pode conter várias linhas e mais de duas colunas.
Se quiser fazer a agregação baseada no tempo como parte da sua consulta, faça o seguinte:
Configure a sua consulta para agregar dados num intervalo de tempo, ordenar os resultados por data/hora descendente e limitar o número de linhas nos resultados. Pode usar a cláusula
LIMIT
ou o seletor de intervalo de tempo para limitar o número de linhas no resultado da consulta.Por exemplo, a seguinte consulta uma vista de registo e agrega dados por hora, aplica um limite e ordena os resultados:
SELECT TIMESTAMP_TRUNC(timestamp, HOUR) AS hour, severity, COUNT(*) AS count FROM `PROJECT_ID.LOCATION.BUCKET_ID.LOG_VIEW_ID` WHERE severity IS NOT NULL AND severity = "DEFAULT" GROUP BY hour,severity ORDER BY hour DESC LIMIT 10
A seguir, é descrito o significado dos campos na expressão anterior:
- PROJECT_ID: o identificador do projeto.
- LOCATION: a localização da vista de registo ou da vista de estatísticas.
- BUCKET_ID: o nome ou o ID do contentor de registos.
- LOG_VIEW_ID: o identificador da vista de registo, que está limitado a 100 carateres e só pode incluir letras, dígitos, sublinhados e hífenes.
Defina a Dimensão para corresponder à coluna que comunica a unidade de tempo. Por exemplo, se a sua consulta agregar dados por uma hora e criar uma coluna denominada
hour
, defina o menu Dimensão comohour
.Selecione Desativar intervalo porque a sua consulta já especifica o intervalo de agregação. No exemplo, este intervalo é de uma hora.
Defina a Medida para a coluna numérica e defina a função como nenhuma.
Se quiser usar o Log Analytics para fazer a agregação baseada no tempo, faça o seguinte:
- Configure o seletor de intervalo de tempo, que afeta o número de linhas no resultado da consulta.
- Defina a Dimensão para corresponder à coluna que comunica a unidade de tempo.
Por exemplo, pode definir este menu como
timestamp
. - Defina o menu Intervalo para o intervalo de agregação para um intervalo específico. Por exemplo, defina o valor deste campo como
1 hour
. Não selecione Intervalo automático. - Defina a Medida para a coluna numérica e selecione uma função, como soma.
Altere a dimensão e a medida
Pode escolher as linhas e as colunas representadas no gráfico selecionando os campos de dimensão e de medida.
Dimensão
A dimensão tem de ser uma coluna de data/hora, numérica ou de string. Por predefinição, a dimensão é definida como a primeira coluna baseada na data/hora no esquema. Se não existir nenhuma data/hora na consulta, a primeira coluna de string é selecionada como a dimensão. Também pode personalizar a dimensão no painel Apresentação do gráfico. Quando uma coluna de data/hora é selecionada como a dimensão, o gráfico mostra como os dados mudam ao longo do tempo. Quando uma coluna de string é selecionada como a dimensão de um gráfico de barras, pode ordenar os dados por ordem ascendente ou descendente, o que ordena a dimensão por ordem lexical. Também pode manter a ordem de classificação `predefinida`, que classifica a dimensão com base nos valores da medida correspondente por ordem descendente.
Por predefinição, o intervalo das indicações de tempo é definido automaticamente, mas também pode selecionar um intervalo personalizado. Os intervalos automáticos alteram os valores com base no seletor do intervalo de tempo para manter grupos de tamanho semelhante.
Também pode desativar o intervalo, o que lhe permite especificar as suas próprias agregações e intervalos de tempo na consulta para uma análise mais complexa. Se desativar o intervalo, a função de agregação das medidas é definida como
none
. Só são permitidas métricas numéricas quando o intervalo de dimensões está desativado.Medida
Pode selecionar várias medidas no painel Apresentação do gráfico. Quando seleciona uma métrica, também tem de selecionar a função de agregação a aplicar aos respetivos valores agrupados, como
count
,sum
,average
epercentile-99
. Por exemplo,count-distinct
devolve o número de valores únicos numa determinada coluna.Se selecionar a caixa de verificação Desativar intervalo para a dimensão, a opção de função de agregação
none
fica disponível. Se a dimensão for um valor de string, a caixa de verificação Desativar intervalo não é apresentada. No entanto, se definir as funções de agregação de uma medida comonone
, também desativa o intervalo.
Adicione um detalhe
Para dividir uma única série de dados em várias séries de dados com base noutra coluna, adicione uma discriminação.
Quando seleciona uma discriminação, escolha colunas que contenham um pequeno número de etiquetas curtas e significativas, como region_name
, em vez de campos que possam conter um grande número de strings ou strings longas, como textPayload
.
Por exemplo, veja a seguinte configuração do gráfico, em que o campo Dimensão está definido como tipo, o campo Medida está definido como Contar linhas e o campo Detalhe está definido como gravidade:
Na captura de ecrã anterior, vê uma série de dados agrupados, em que o tipo de recurso k8s_container
está dividido em diferentes tipos severity
. Isto permite-lhe identificar quantos registos de cada tipo de gravidade foram gerados por um determinado recurso.
Guarde um gráfico num painel de controlo personalizado
Depois de gerar um gráfico a partir da sua consulta, pode guardá-lo num painel de controlo personalizado. Os painéis de controlo personalizados permitem-lhe apresentar e organizar informações úteis para si através de vários tipos de widgets. Estes painéis de controlo também permitem definir variáveis, que são filtros ao nível do painel de controlo que se aplicam apenas a widgets específicos. Para aplicar uma variável a um widget, tem de modificar a consulta. Para mais informações, consulte o artigo Aplique uma variável a um widget.
Para guardar o gráfico num painel de controlo, faça o seguinte:
-
Na Google Cloud consola, aceda à página Log Analytics:
Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cuja legenda é Registo.
Execute uma consulta para gerar um gráfico e, de seguida, clique em
Guardar gráfico no separador Gráfico.
Na caixa de diálogo Guardar no painel de controlo, introduza um título para o gráfico e selecione o painel de controlo onde quer guardar o gráfico.
Opcional: para ver o painel de controlo personalizado, no aviso, clique em Ver painel de controlo.
Para ver uma lista de painéis de controlo personalizados que contêm gráficos gerados por consultas SQL, aceda ao botão Guardar gráfico e clique em arrow_drop_down Menu.
Edite um gráfico guardado num painel de controlo personalizado
Pode modificar um gráfico depois de o guardar num painel de controlo. Para mais informações, consulte o artigo Modifique a configuração de um widget. Na caixa de diálogo Configurar widget, pode fazer o seguinte:
- Altere os dados que consulta.
- Edite a consulta usada para gerar um gráfico.
- Personalize a configuração do gráfico para visualizar dados diferentes.
Limitações
Se o seu Google Cloud projeto estiver numa pasta que use o Assured Workloads, não é possível apresentar os gráficos que gerar num painel de controlo personalizado.
Os filtros ao nível do painel de controlo não se aplicam a gráficos gerados a partir de uma consulta SQL.
As colunas selecionadas têm de ter, pelo menos, uma linha com um valor não nulo.
Se guardar uma consulta e personalizar a configuração do gráfico, a configuração do gráfico personalizado não é guardada.
Se a sua consulta já contiver agregações, o gráfico gerado pode ser diferente devido à agregação adicional que é aplicada automaticamente pelo Log Analytics.
Os caminhos JSON têm de ser convertidos em strings ou números para serem representados em gráficos.
Consultas de exemplo
Esta secção fornece exemplos de consultas SQL para criar gráficos com os resultados das suas consultas. Para obter estatísticas mais úteis dos seus registos, personalize a configuração do gráfico. Para usar as consultas de exemplo, faça o seguinte:
-
Na Google Cloud consola, aceda à página Log Analytics:
Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cuja legenda é Registo.
Identifique o nome da tabela da vista de registo que quer consultar.
Para identificar este nome, aceda à lista Vistas de registo, localize a vista de registo e, de seguida, selecione Consulta. O painel Consulta é preenchido com uma consulta predefinida que inclui o nome da tabela da visualização de registos consultada. O nome da tabela tem o formato
project_ID.region.bucket_ID.view_ID
.Para mais informações sobre como aceder à consulta predefinida, consulte o artigo Consulte uma vista de registo.
Substitua VIEW pelo nome da tabela da vista de registo que quer consultar e, em seguida, copie a consulta.
Cole a consulta no painel Consulta e, de seguida, clique em Executar consulta.
Represente graficamente as entradas do registo por localização e gravidade
A seguinte consulta seleciona location
e severity
, com a localização convertida como uma string:
SELECT
CAST(JSON_VALUE(resource.labels.location) AS STRING) AS location,
severity,
FROM
`VIEW`
WHERE resource.labels.location IS NOT NULL
Um exemplo de gráfico e configuração do gráfico tem o seguinte aspeto:
Na captura de ecrã anterior, a configuração do gráfico tem a seguinte configuração:
- Tipo de gráfico: gráfico de barras, horizontal
- Dimensão:
location
, com um limite de 10 - Medição: contar linhas
- Análise detalhada:
severity
, com um limite de cinco
Represente graficamente os registos de auditoria de acesso aos dados do BigQuery
A consulta seguinte filtra os registos de auditoria do BigQuery data_access
e seleciona determinados campos, como user_email
, ip
, auth_permission
e job_execution_project
. Por exemplo, pode criar um gráfico que visualize a frequência de utilização da API BigQuery de cada principal ao longo do tempo.
SELECT
timestamp,
proto_payload.audit_log.authentication_info.principal_email as user_email,
proto_payload.audit_log.request_metadata.caller_ip as ip,
auth.permission as auth_permission,
auth.granted as auth_granted,
JSON_VALUE(data_access.resource.labels.project_id) AS job_execution_project,
SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(1)] AS referenced_project,
SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(3)] AS referenced_dataset,
SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(5)] AS referenced_table
FROM `VIEW` as data_access,
UNNEST(proto_payload.audit_log.authorization_info) AS auth
WHERE
log_id="cloudaudit.googleapis.com/data_access"
AND data_access.resource.type = 'bigquery_dataset'
Um exemplo de gráfico e configuração do gráfico tem o seguinte aspeto:
Na captura de ecrã anterior, a configuração do gráfico tem a seguinte configuração:
- Tipo de gráfico: gráfico de barras, vertical
- Dimensão:
user_email
, com um limite de cinco - Medição: contar linhas
- Análise detalhada:
auth_permission
, com um limite de cinco
O que se segue?
Para uma vista geral do Log Analytics, consulte o artigo Vista geral da consulta e análise de registos.
Para ver consultas de exemplo, consulte o artigo Consultas SQL de exemplo.
Para saber como analisar com registos de auditoria através do Log Analytics, consulte o artigo Consultas SQL para estatísticas de segurança.