Selecionar métricas ao usar o Metrics Explorer

Neste documento, descrevemos como configurar um gráfico temporário que exibe os dados de série temporal coletados pelo seu projeto. O Metrics Explorer só exibe dados numéricos de série temporal.

Selecionar os dados a serem exibidos

Para configurar qual série temporal será exibida em um gráfico, crie uma consulta fazendo seleções em menus ou escreva uma consulta. Ao escrever uma consulta, você seleciona a linguagem de consulta e usa um editor de consultas ou uma interface baseada em texto:

  • As consultas da linguagem de consulta do Monitoring (MQL, na sigla em inglês) especificam as série temporal e como elas são agrupadas e alinhadas. A interface do MQL oferece suporte a um editor de código com sugestões e verificação de sintaxe.

    Geralmente, não é possível converter consultas MQL em formulários que possam ser usados por outras interfaces. As consultas não salvas são descartadas quando você entra ou sai da guia MQL.

  • As consultas da linguagem de consulta do Prometheus (PromQL) especificam série temporal e como elas são agrupadas e alinhadas. A interface do PromQL oferece suporte a um editor com sugestões.

    Geralmente, não é possível converter consultas PromQL em formulários que possam ser usados por outras interfaces. As consultas não salvas são descartadas quando você entra ou sai da guia do PromQL.

  • As consultas de filtro de monitoramento especificam a série temporal, mas não incluem instruções de agrupamento ou alinhamento.

    Qualquer série temporal que o Monitoring possa traçar pode ser especificada usando um filtro do Monitoring. Por exemplo, para gerar um gráfico do número de processos em execução em uma VM, você precisa usar um filtro do Monitoring que especifique uma função.

    Nem sempre é possível converter um filtro do Monitoring para o formato exigido por outras interfaces. Portanto, sua consulta poderá ser descartada se você mudar para uma interface diferente.

As consultas normalmente especificam um tipo de métrica, um tipo de recurso e filtros:

  • Um tipo de métrica identifica as medidas a serem coletadas de um recurso. Ele inclui uma descrição do que está sendo medido e como as medições são interpretadas. Um tipo de métrica às vezes é chamado de métrica. Um exemplo de métrica é "Utilização da CPU". Para informações conceituais, consulte Tipos de métricas.

  • Um tipo de recurso especifica de qual recurso os dados da métrica são capturados. Às vezes, o tipo de recurso é chamado de tipo de recurso monitorado ou recurso. Um exemplo de recurso é uma "instância de máquina virtual (VM) do Compute Engine". Para informações conceituais, consulte Recursos monitorados.

As consultas MQL e PromQL incluem instruções de agrupamento e alinhamento. No entanto, ao criar um filtro do Monitoring ou usar menus para selecionar a série temporal para o gráfico, você define as configurações de agrupamento e alinhamento usando menus.

Criar consultas usando menus

A configuração padrão é criar consultas usando menus. Normalmente, se você selecionar uma métrica e um filtro e mudar para uma interface diferente, suas seleções serão preservadas e reformatadas para essa interface. Ou seja, uma consulta criada por menus pode ser convertida em uma consulta MQL.

É possível retornar de outras interfaces para a interface orientada por menu selecionando Builder. No entanto, sua consulta será descartada. Ou seja, uma consulta MQL não pode ser convertida em um formulário equivalente baseado em menus.

Para criar sua consulta usando menus, faça o seguinte:

  1. No Console do Google Cloud, acesse a página do  Metrics Explorer:

    Acesse o Metrics explorer

    Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.

  2. Na barra de ferramentas do painel de consulta, faça o seguinte:

    1. No elemento Métrica, expanda o menu Selecionar uma métrica.

      O menu Selecionar uma métrica contém recursos que ajudam você a encontrar os tipos de métrica disponíveis:

      • Para encontrar um tipo de métrica específico, use a barra de filtro . Por exemplo, se você inserir util, o menu será restrito para mostrar entradas que incluam util. As entradas são mostradas quando passam em um teste "contém" que não diferencia maiúsculas de minúsculas.

      • Para mostrar todos os tipos de métricas, mesmo aquelas sem dados, clique em Ativa. Por padrão, os menus mostram apenas tipos de métricas com dados.

    2. Faça uma seleção no menu Recursos, no menu Categorias de métrica e Métricas e depois clique em Aplicar.

      Por exemplo, para gerar um gráfico do uso da CPU de uma máquina virtual do Compute Engine, selecione Instância de VM, Instância, Utilização da CPU e, em seguida, clique em Aplicar.

      O menu Recursos lista o recurso de que os dados são coletados. Quando uma métrica não for gravada em um recurso, selecione Não especificado.

    Depois que o tipo de recurso e a métrica forem selecionados, o gráfico mostrará todas as série temporal disponíveis para esse par:

    Exibir um gráfico com uma métrica selecionada.

    O gráfico anterior contém mais dados do que o limite de exibição. Os gráficos são limitados a 50 linhas. O gráfico mostra um aviso de que há muitos dados para exibir. Para reduzir a quantidade de dados, use o elemento Classificar e limitar na barra de ferramentas da consulta. Para mais informações, consulte Mostrar outliers.

    Também é possível usar as opções de filtragem e agregação para reduzir a quantidade de dados no gráfico. Essas técnicas tornam os gráficos mais úteis para diagnósticos e análises, além de aumentar o desempenho e a capacidade de resposta da própria interface do usuário.

  3. Opcional: adicione filtros para restringir as série temporal que são exibidas. A próxima seção descreve as opções de filtragem.

  4. Opcional: configure como as série temporal são agrupadas e alinhadas. Para mais informações, consulte Escolher como exibir dados nos gráficos.

Filtrar dados gráficos

Os filtros garantem que apenas série temporal que atendam a algum conjunto de critérios sejam incluídas no gráfico. Ao aplicar filtros, você pode reduzir o número de linhas no gráfico, o que pode melhorar o desempenho dele. Outra maneira de melhorar a capacidade de resposta de um gráfico é configurar opções de agregação, além de classificar e limitar o número de série temporal exibidas. Para mais informações, consulte Mostrar outliers.

Um filtro é composto por um rótulo, um comparador e um valor. Por exemplo, para corresponder todas as série temporal com o rótulo zone que começa com "us-central1", use o filtro zone=~"us-central1.*", que utiliza uma expressão regular para realizar a comparação. Há quatro operadores de comparação:

  • igual a =
  • diferente de, !=
  • correspondência de expressão regular, =~
  • a expressão regular não corresponder, !=~

Ao filtrar pelo ID do projeto ou pelo contêiner de recursos, use o operador de igualdade, (=). Ao filtrar por outros rótulos, é possível usar qualquer comparador compatível. Normalmente, é possível filtrar rótulos de métricas e recursos e por grupo de recursos.

Quando você fornece vários critérios de filtragem, o gráfico correspondente mostra apenas as série temporal que atendem a todos os critérios, um AND lógico.

Para adicionar um filtro ao usar a interface orientada por menus do console do Google Cloud, faça o seguinte:

  1. No elemento Filtro, clique em Adicionar filtro e faça uma seleção no menu.

  2. Para mudar a comparação, selecione um valor no menu Comparador.

  3. No campo Valor, digite ou selecione um valor:

    • Para uma comparação direta, = ou !=, selecione o valor no menu ou insira um valor e clique em Ok. É possível inserir valores como us-central1-a ou criar uma string de filtro que comece com starts_with ou ends_with. Por exemplo, para exibir dados de qualquer zona us-central1, digite a string de filtro starts_with("us-central1"). Consulte Como monitorar filtros para mais informações sobre strings de filtro.

      Como as entradas do menu são derivadas da série temporal recebida, quando um recurso monitorado não está gerando dados para a métrica selecionada, você precisa inserir um valor para o rótulo.

    • Para uma comparação de expressão regular, =~ ou !=~, insira uma expressão regular RE2 no campo Valor e clique em Ok. Por exemplo, a expressão regular us-central1-.* corresponde a qualquer zona us-central1:

      Para corresponder a qualquer zona dos EUA que termine com "a", use a expressão regular ^us.*.a$.

      Não é possível usar expressões regulares para filtrar o rótulo de recurso project_id.

      Por exemplo, para visualizar apenas a série temporal de uma das zonas us-central1, aplique um filtro zone=~"us-central1.*".

Quando você adiciona vários filtros, os seguintes pontos são aplicados:

  • O mesmo rótulo pode ser usado várias vezes, o que permite especificar um filtro para um intervalo de valores.

  • Todos os critérios de filtro precisam ser atendidos. Eles constituem um AND lógico.

Para editar o valor ou comparador de um filtro, no elemento de filtro, clique em Menu, faça as alterações e clique em Ok.

Para excluir um filtro, clique em Cancelar.

Criar consultas MQL

Para inserir uma consulta MQL ou PromQL, faça o seguinte:

  1. No Console do Google Cloud, acesse a página do  Metrics Explorer:

    Acesse o Metrics explorer

    Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.

  2. Na barra de ferramentas do painel do criador de consultas, selecione o botão  MQL ou  PromQL.
  3. Verifique se MQL está selecionado na opção de ativar/desativar Idioma. A alternância de idiomas está na mesma barra de ferramentas que permite formatar sua consulta.
  4. Opcional: desative o botão de alternância Execução automática.
  5. Insira sua consulta no editor de consultas. Por exemplo, para gerar um gráfico com a utilização da CPU das instâncias de VM no projeto do Google Cloud, use a seguinte consulta:

    fetch gce_instance
    | metric 'compute.googleapis.com/instance/cpu/utilization'
    | group_by 1m, [value_utilization_mean: mean(value.utilization)]
    | every 1m
    

    Para mais informações sobre o MQL, consulte os documentos a seguir:

  6. Clique em Executar consulta.

    Quando o botão Executar automaticamente estiver ativado, o botão Executar consulta não será exibido.

Criar consultas PromQL

Para inserir uma consulta MQL ou PromQL, faça o seguinte:

  1. No Console do Google Cloud, acesse a página do  Metrics Explorer:

    Acesse o Metrics explorer

    Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.

  2. Na barra de ferramentas do painel do criador de consultas, selecione o botão  MQL ou  PromQL.
  3. Verifique se PromQL está selecionado na opção de ativar/desativar Idioma. A alternância de idiomas está na mesma barra de ferramentas que permite formatar sua consulta.
  4. Opcional: desative o botão de alternância Execução automática.
  5. Insira sua consulta no editor de consultas. Por exemplo, para gerar um gráfico da utilização média da CPU das instâncias de VM no projeto do Google Cloud, use a seguinte consulta:

    avg(compute_googleapis_com:instance_cpu_utilization)
    

    Para mais informações sobre como usar PromQL, consulte PromQL no Cloud Monitoring.

  6. Clique em Executar consulta.

    Quando o botão Executar automaticamente estiver ativado, o botão Executar consulta não será exibido.

Escrever consultas de filtro de monitoramento

Quando você quiser realizar uma das seguintes ações, use o modo de filtro direto, que permite inserir um filtro do Monitoring:

  • Exibir um objetivo de nível de serviço (SLO).
  • Exibir o número de processos em execução em máquinas virtuais (VMs).
  • Exiba uma métrica personalizada de que você ainda não tem dados.
  • Filtre uma série temporal com base em um rótulo para o qual você ainda não tem dados.

Um filtro do Monitoring ou um filtro de métricas é uma expressão que o Monitoring usa para identificar a série temporal a ser representada em um gráfico. Por exemplo, a expressão a seguir resulta em um gráfico que exibe uma contagem de processos cujo nome inclui nginx:

select_process_count("monitoring.regex.full_match(\".*nginx.*\")")
resource.type="gce_instance"

Também é possível usar filtros do Monitoring para identificar série temporal pelo tipo de métrica e recurso. A expressão a seguir gera um gráfico que exibe a contagem de entradas de registro de todas as instâncias de máquina virtual do Google Cloud na zona us-east1-b:

metric.type="logging.googleapis.com/log_entry_count"
resource.type="gce_instance"
resource.label."zone"="us-east1-b"

Para inserir um filtro de Monitoramento, faça o seguinte:

  1. No Console do Google Cloud, acesse a página do  Metrics Explorer:

    Acesse o Metrics explorer

    Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.

  2. Clique em Ajuda no elemento Métrica e, em seguida, selecione Modo de filtro direto.

    Os elementos Metric e Filter são excluídos, e um elemento Filters permite que você insira texto.

    Se você selecionou um tipo de recurso, uma métrica ou filtros antes de alternar para o modo modo de filtro direto, essas configurações serão mostradas no elemento Filtros.

  3. Na área de texto do elemento Filtros, insira uma expressão de filtro do Monitoring. Para informações de sintaxe, consulte os documentos a seguir:

    Quando você usa o modo de filtro direto e não há dados disponíveis que satisfaçam o filtro, um erro é exibido. Mensagens de erro comuns incluem Chart definition invalid e No data is available for the selected timeframe.

  4. Opcional: configure como as série temporal são agrupadas e alinhadas. Para mais informações, consulte Escolher como exibir dados nos gráficos.

Para retornar à interface orientada por menu, clique em Sair do modo de filtro direto.

Escolha como exibir os dados gráficos

Veja na seção como exibir os dados selecionados configurando os campos de agregação. A agregação consiste no alinhamento de pontos de dados em uma série temporal e na combinação de diferentes séries temporais. Para uma explicação detalhada sobre agregação, consulte Filtragem e agregação: como manipular séries temporais.

O conteúdo desta seção não se aplica quando você seleciona os dados para o gráfico usando um MQL ou PromQL.

Combinar série temporal

É possível reduzir a quantidade de dados retornados para uma métrica combinando diferentes séries temporais. Para combinar várias série temporal, normalmente especifica um ou mais rótulos e uma função. As séries temporais que têm o mesmo valor para todos os rótulos especificados são agrupadas e, em seguida, a função especificada as combina em uma nova série temporal.

As configurações no elemento de agregação podem alterar o número de série temporal exibidas pelo gráfico. As configurações padrão desse elemento são determinadas pelo tipo de métrica selecionado. Para modificar a tela, siga um destes procedimentos:

  • Para mostrar todas as série temporal, no elemento de Agregação, verifique se o primeiro menu está definido como Não agregado e como Nenhum.

  • Para combinar série temporal, faça o seguinte no elemento de Agregação:

    1. Expanda o primeiro menu e selecione uma função.

      O gráfico é atualizado e exibe uma única série temporal. Por exemplo, se você selecionar Média, a série temporal exibida será a média de todas as séries temporais.

    2. Para combinar série temporal que têm os mesmos valores de rótulo, expanda o segundo menu e selecione um ou mais rótulos.

      O gráfico é atualizado e mostra uma série temporal para cada combinação exclusiva de valores de rótulo. Por exemplo, para exibição em série temporal por zona, defina o segundo menu como zone.

  • Para configurar o espaçamento entre os pontos de dados, clique em Adicionar elemento de consulta, selecione Intervalo mínimo e insira um valor.

Por exemplo, se você definir a função como Sum e selecionar o rótulo user_labels.version, haverá uma série temporal para cada valor do rótulo user_labels.version. Os pontos de dados em cada série temporal são calculados a partir da soma de todos os valores de séries temporais individuais para uma versão específica:

Mostrando série temporal agrupadas por user_labels.version.

Quando você seleciona vários rótulos, as série temporal que têm os mesmos valores para os rótulos selecionados são combinadas. O gráfico resultante exibe uma série temporal para cada combinação de valores dos rótulos. A ordem de especificação dos rótulos não importa. A captura de tela a seguir mostra um gráfico em que as série temporal são combinadas pelos rótulos user_labels.version e system_labels.machine_image:

Como exibir séries temporais agrupadas por versão e imagem da máquina.

Conforme mostrado, o gráfico exibe uma série temporal para cada par de valores de rótulo. O fato de você ter uma série temporal para cada combinação de rótulos significa que essa técnica pode criar mais dados do que você pode colocar em um único gráfico.

Mostrar todas série temporal

Para mostrar todas série temporal, no elemento Agregação, defina o primeiro menu como Não agregado e o segundo como Nenhum.

Alinhar série temporal

O alinhamento é o processo de conversão de dados de séries temporais recebidos pelo Monitoring em uma nova série temporal que tem pontos de dados em intervalos fixos. O processo de alinhamento consiste em coletar todos os pontos de dados recebidos em um período fixo, aplicar uma função para combinar esses pontos de dados e atribuir um carimbo de data/hora ao resultado. Essa função pode calcular a média de todas as amostras ou extrair o máximo de todas as amostras.

Definir intervalo de alinhamento

Para especificar o período fixo para a combinação dos pontos, clique em Adicionar elemento de consulta no painel de consulta, selecione Intervalo mínimo e preencha a caixa de diálogo.

Por exemplo, considere uma métrica com um período de amostragem de um minuto. Se um gráfico for configurado para exibir uma hora de dados, ele poderá exibir todos os 60 pontos de dados. Se o campo Intervalo mínimo estiver definido como 10 minutes, o gráfico exibirá seis pontos de dados. No entanto, se você configurar o gráfico para mostrar dados de uma semana, haverá muitos pontos a serem mostrados no gráfico. Assim, o intervalo em que os pontos são combinados será modificado automaticamente. Neste exemplo, o intervalo modificado é de uma hora.

A captura de tela a seguir ilustra a utilização da CPU das instâncias de VM do Compute Engine em um projeto específico do Google Cloud. Nessa imagem, o campo Intervalo mínimo está definido como 1 minute:

Utilização da CPU de instâncias de VM usando configurações de alinhamento padrão.

Para fins de comparação, a captura de tela a seguir ilustra o efeito de alterar o intervalo de 1 minute para 5 minutes:

Uso da CPU das instâncias de VM usando o padrão com um período de alinhamento de cinco minutos.

Ao aumentar o período, o gráfico resultante tem menos pontos, diminuindo de 60 pontos por série temporal para 10 pontos por série temporal. Ao aumentar o campo Min Interval, mais pontos são combinados, o que tem um efeito de suavização nos dados plotados.

Definir função de alinhamento

Quando você seleciona a função para agregação, o Cloud Monitoring seleciona a função de alinhamento para você. O Cloud Monitoring determina a função de alinhamento ideal com base no tipo de métrica selecionado e na sua escolha para a função de agregação. No entanto, é possível especificar uma função de alinhamento e substituir a escolha feita pelo Cloud Monitoring.

Para especificar a função de alinhamento, faça o seguinte:

  1. No elemento Agregação, expanda o primeiro menu e selecione Configurar alinhador. A função de alinhamento e os elementos de agrupamento foram adicionados.
  2. Expanda o elemento Função de alinhamento e faça uma seleção.

Embora a maioria das funções de alinhamento compatíveis execute funções matemáticas comuns, algumas executam ações mais complicadas:

  • next mais antiga: para manter apenas a amostra mais recente dentro de um período de alinhamento, selecione mais antigo. Essa função é comumente usada com verificações de tempo de atividade e é uma boa opção quando você só se importa com o valor mais recente.

    Esta função é válida apenas para métricas de medidor.

  • percentile: para exibir uma métrica de distribuição em um tipo de gráfico de linha, gráfico de área empilhadas ou gráfico de barras empilhadas, você precisa selecionar qual percentil na distribuição será exibida. Uma forma de especificar esse percentil é selecionar uma função de percentil. É possível selecionar os 5º, 50º, 95º e 99º percentis. O ponto de dados alinhado é determinado pelo cálculo do percentil especificado usando todos os pontos de dados no período de alinhamento.

    Essa função é válida somente para métricas de medidor e delta quando elas têm um tipo de dados de distribuição.

  • delta: para converter uma métrica cumulativa ou delta em uma métrica delta com uma amostra por período de alinhamento, use essa função. A interpolação de dados pode ocorrer quando você usa essa função. Para ver um exemplo, consulte Tipos, tipos e conversões.

    Essa função é válida somente para métricas cumulativas e delta.

  • rate: para converter uma métrica cumulativa ou delta em uma métrica de medidor, use esta função. Se você escolher essa função, poderá pensar na série temporal que está sendo transformada como em uma função delta e, em seguida, dividida pelo período de alinhamento. Por exemplo, se a unidade da série temporal original for MiB e a unidade do período de alinhamento for o segundo, o gráfico terá uma unidade de MiB por segundo. Para mais informações, consulte Tipos, tipos e conversões.

    Essa função é válida somente para métricas cumulativas e delta.

Para mais informações sobre as funções de alinhamento disponíveis, consulte Aligner na Referência da API.

Agrupamento secundário e alinhamento

Quando você tem várias séries temporais que já representam agregações, é possível reduzir todas as séries temporais no gráfico para uma única série temporal escolhendo um Agregador secundário. Por exemplo, se você agrupar os dados por zona, o gráfico mostrará uma série temporal para cada zona. Para criar um gráfico com uma única série temporal, use os campos de agregação secundários.

Para alguns tipos de métricas, você tem a opção de transformar os dados. Se essa opção estiver disponível e se você definir o campo Transform para um valor diferente de None, todos os outros campos serão as configurações de agregação secundárias.

Quando os campos de agregação secundários forem configuráveis, faça o seguinte para acessá-los:

  1. Clique em Adicionar elemento de consulta e selecione Agregação secundária.
  2. Configure o elemento de Agregação secundária.

Veja na captura de tela a seguir várias séries temporais resultantes do agrupamento de um conjunto filtrado de dados. O uso do agrupamento requer agregação: cada grupo de linhas é agregado em uma. Veja na captura de tela a seguir séries temporais agrupadas por zona:

Como exibir uma série temporal filtrada que é agrupada por zona.

Veja na captura de tela a seguir o resultado do uso da agregação secundária para encontrar o valor médio na série temporal agrupada:

Como exibir uma agregação secundária aplicada ao exemplo anterior.

Configurar o nome de uma coluna de legendas

O campo Modelo de legenda permite personalizar uma descrição para a série temporal no seu gráfico. Essas descrições aparecem na dica do gráfico e na legenda do gráfico na coluna Nome. Por padrão, as descrições na legenda são criadas para você a partir dos valores de diferentes rótulos na série temporal. Como o sistema seleciona os rótulos, os resultados podem não ser úteis para você. Para criar um modelo para descrições, use este campo.

É possível inserir texto simples e modelos no campo Modelo de legendas. Ao adicionar um modelo, uma expressão que é avaliada quando a legenda é exibida é adicionada.

Para adicionar um modelo de legenda a um gráfico, siga estas etapas:

  1. No painel Exibição, expanda Modelo de legendas.
  2. Clique em Exibir sugestões de variáveis de modelo e selecione uma entrada no menu. Por exemplo, se você selecionar zone, o modelo ${resource.labels.zone} será adicionado.

Por exemplo, a captura de tela a seguir mostra um modelo de legenda que contém texto simples e a expressão ${resource.labels.zone}:

Um modelo para uma descrição simples

Na legenda do gráfico, os valores gerados a partir do modelo aparecem em uma coluna com o cabeçalho Nome e no cartão de informações:

Descrições geradas a partir de um modelo

É possível configurar o modelo de legenda para incluir várias strings e modelos de texto. No entanto, o espaço de exibição disponível no cartão de informações é limitado.

A seguir