Criar políticas de alertas de limite de métrica

Neste documento, descrevemos como usar o console do Google Cloud para criar uma política de alertas com base em métricas que envia notificações quando os valores de uma métrica são maiores ou menores que o limite de uma janela de novo teste específica. Por exemplo, a condição de uma política de alertas pode ser atendida quando a utilização da CPU é maior que 80% por pelo menos cinco minutos.

Este conteúdo não se aplica a políticas de alertas baseadas em registros. Para informações sobre políticas de alertas com base em registros, que notificam você quando uma mensagem específica aparece nos registros, consulte Como monitorar seus registros.

Este documento não descreve o seguinte:

Antes de começar

  1. Para receber as permissões necessárias para criar e modificar políticas de alertas usando o console do Google Cloud, peça ao administrador para conceder a você o papel do IAM Editor do Monitoring (roles/monitoring.editor) no projeto. Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

    Também é possível receber as permissões necessárias com papéis personalizados ou outros papéis predefinidos.

    Para mais informações sobre os papéis do Cloud Monitoring, consulte Controlar o acesso com o Identity and Access Management.

  2. Verifique se você conhece os conceitos gerais das políticas de alertas. Para informações sobre esses tópicos, consulte Visão geral de alertas.

  3. Configure os canais de notificação que você quer usar para receber notificações. Para fins de redundância, recomendamos criar vários tipos de canais de notificação. Para mais informações, consulte Criar e gerenciar canais de notificação.

Criar política de alertas

Para criar uma política de alertas que compare o valor dessa métrica com um limite estático, faça o seguinte:

  1. No console do Google Cloud, acesse a página  Alertas:

    Acessar Alertas

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

  2. Selecione Criar política.
  3. Selecione a série temporal que será monitorada:

    1. Clique em Selecionar uma métrica, navegue pelos menus para selecionar um tipo de recurso e de métrica e clique em Aplicar.

      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. Para mais informações, consulte Métrica não listada no menu.

      É possível monitorar qualquer métrica integrada ou definida pelo usuário.

    2. Opcional: para monitorar um subconjunto da série temporal que corresponda aos tipos de métrica e recurso selecionados na etapa anterior, clique em Adicionar filtro. Na caixa de diálogo de filtro, selecione o rótulo que será filtrado, um comparador e o valor do filtro. Por exemplo, o filtro zone =~ ^us.*.a$ usa uma expressão regular para corresponder todos os dados de série temporal com nome de zona que começa com us e termina com a. Para mais informações, consulte Filtrar a série temporal selecionada.

    3. Opcional: para alterar como os pontos em uma série temporal são alinhados, na seção Transformar dados, defina os campos Janela contínua e Função de janela contínua.

      Esses campos especificam como os pontos registrados em uma janela são combinados. Por exemplo, suponha que a janela tenha 15 minutos e a função de janela seja max. O ponto alinhado é o valor máximo de todos os pontos nos últimos 15 minutos. Para mais informações, consulte Alinhamento: regularização dentro da série.

      Também é possível monitorar a taxa em que um valor de métrica é alterado usando o campo Função de janela contínua para alteração percentual. Para mais informações, consulte Monitorar uma taxa de mudança.

    4. Opcional: combine série temporal quando quiser reduzir o número de série temporal monitoradas por uma política ou quando quiser monitorar apenas uma coleção de série temporal. Por exemplo, em vez de monitorar a utilização da CPU de cada instância de VM, calcule a média de utilização da CPU de todas as VMs em uma zona e, em seguida, monitore essa média. Por padrão, as série temporal não são combinadas. Para informações gerais, consulte Redução: combinação de séries temporais.

      Para combinar todas série temporal, faça o seguinte:

      1. Na seção Entre séries temporais, clique em Expandir.
      2. Defina o campo Agregação de série temporal como um valor diferente de none. Por exemplo, para exibir o valor médio da série temporal, selecione mean.
      3. O campo Agrupar por série temporal precisa estar vazio.

      Para combinar ou agrupar série temporal por valores de rótulo, faça o seguinte:

      1. Na seção Entre séries temporais, clique em Expandir.
      2. Defina o campo Agregação de série temporal como um valor diferente de none.
      3. No campo Agrupar por série temporal, selecione os rótulos que vão ser agrupados.

      Por exemplo, se você agrupar pelo rótulo zone e definir o campo de agregação como um valor de mean, o gráfico exibirá uma série temporal para cada zona que tiver dados. A série temporal mostrada para uma zona específica é a média de todas as séries temporais com essa zona.

    5. Clique em Próxima.

  4. Configure o gatilho de condição:

    1. Deixe o campo Tipo de condição com o valor padrão de Limite.

    2. Selecione um valor para o menu Acionador de alerta. Esse menu permite especificar o subconjunto de série temporal que precisa violar o limite antes que a condição seja atendida.

    3. Informe quando o valor de uma métrica violar o limite usando os campos Posição do limite e Valor do limite. Por exemplo, se você definir esses valores como Acima do limite e 0.3, qualquer medida maior que 0.3 vai violar o limite.

    4. Opcional: para selecionar por quanto tempo as medições precisam violar o limite antes que o Monitoring envie uma notificação, expanda Opções avançadas e use o menu Testar novamente a janela.

      O valor padrão é Sem novo teste. Com essa configuração, uma única medição pode resultar em uma notificação. Para mais informações e um exemplo, consulte Configurações de período e duração de alinhamento.

    5. Opcional: para especificar como o Monitoring avalia a condição quando os dados param de chegar, expanda Opções avançadas e use o menu Avaliação de dados ausentes.

      O menu Dados ausentes de avaliação é desativado quando o valor da Janela de novo teste é Sem novo teste.

      Console do Google Cloud
      Campo "Avaliação de dados ausentes"
      Resumo Detalhes
      Dados ausentes vazios Incidentes abertos permanecem abertos.
      Novos incidentes não são abertos.

      A condição continua sendo atendida quando os dados param de chegar. Se um incidente está aberto para essa condição, ele permanece aberto. Quando um incidente está aberto e nenhum dado é recebido, o timer de fechamento automático é iniciado após um atraso de pelo menos 15 minutos. Se o timer expirar, o incidente será encerrado.

      Caso contrário, ela continua não sendo atendida quando os dados param de chegar.

      Pontos de dados ausentes tratados como valores que violam a condição da política Incidentes abertos permanecem abertos.
      Novos incidentes podem ser abertos.

      A condição continua sendo atendida quando os dados param de chegar. Se um incidente está aberto para essa condição, ele permanece aberto. Quando um incidente está aberto e nenhum dado chega no período de fechamento automático mais 24 horas, ele é encerrado.

      Para condições que não são atendidas, essa configuração faz com que a condição de limite de métrica se comporte como um metric-absence condition. Se os dados não chegarem no horário especificado pela janela de novo teste, a condição será avaliada como atendida. Para uma política de alertas com uma condição, a condição que estiver sendo atendida resulta na abertura de um incidente.

      Pontos de dados ausentes tratados como valores que não violam a condição da política Os incidentes abertos foram fechados.
      Novos incidentes não são abertos.

      Para as condições atendidas, a condição deixa de ser atendida quando os dados param de chegar. Se um incidente estiver aberto para essa condição, ele será encerrado.

      Caso contrário, ela continua não sendo atendida quando os dados param de chegar.

    6. Clique em Próxima.

  5. Opcional: crie uma política de alertas com várias condições.

    A maioria das políticas monitora um único tipo de métrica. Por exemplo, uma política pode monitorar o número de bytes gravados em uma instância de VM. Para monitorar vários tipos de métricas, crie uma política com várias condições. Cada condição monitora um tipo de métrica. Depois de criar as condições, especifique como elas serão combinadas. Para mais informações, consulte Políticas com várias condições.

    Para criar uma política de alertas com várias condições, faça o seguinte:

    1. Para cada condição adicional, clique em Adicionar condição de alerta e configure-a.
    2. Clique em Próxima e configure como as condições são combinadas.
    3. Clique em Próxima para acessar as notificações e a configuração de documentação.
  6. Configure as notificações:

    1. Expanda o menu Notificações e nome e selecione os canais de notificação. Para fins de redundância, recomendamos que você adicione vários tipos de canais de notificação a uma política de alertas. Para mais informações, consulte Gerenciar canais de notificação.

    2. Opcional: para receber uma notificação quando um incidente for encerrado, selecione Notificar sobre a interdição de incidentes. Por padrão, quando você cria uma política de alertas com o console do Google Cloud, uma notificação é enviada apenas quando um incidente é criado.

    3. Opcional: para alterar o tempo que o Monitoring espera antes de fechar um incidente depois que os dados param de chegar, selecione uma opção no menu Duração do fechamento automático de incidentes. Por padrão, quando os dados param de chegar, o Monitoring espera sete dias antes de fechar um incidente aberto.

    4. Selecione uma opção no menu Nível de gravidade da política. Os incidentes e as notificações mostram o nível de gravidade.

    5. Opcional: para adicionar rótulos personalizados à política de alertas, na seção Rótulos de usuário da política, faça o seguinte:

      1. Clique em Adicionar rótulo e, no campo Chave, insira um nome para o rótulo. Os nomes dos rótulos precisam começar com uma letra minúscula e podem conter letras minúsculas, numerais, sublinhados e traços. Por exemplo, insira severity.
      2. Clique em Valor e digite um valor para o rótulo. Os valores de rótulo podem conter letras minúsculas, numerais, sublinhados e traços. Por exemplo, insira critical.

      Para informações sobre como usar rótulos de política para gerenciar as notificações, consulte Anotar incidentes com rótulos.

  7. Opcional: na seção Documentação, insira o conteúdo que você quer incluir na notificação.

    Para formatar a documentação, use texto simples, Markdown e variáveis. Também é possível incluir links para ajudar os usuários a depurar o incidente, como links para manuais internos, painéis do Google Cloud e páginas externas. Por exemplo, o modelo de documentação a seguir descreve um incidente de utilização da CPU para um recurso gce_instance e inclui várias variáveis para fazer referência à política de alertas e condicionar os recursos REST. O modelo de documentação direciona os leitores para páginas externas para ajudar na depuração.

    Quando as notificações são criadas, o Monitoring substitui as variáveis da documentação pelos valores delas. Os valores substituem as variáveis somente nas notificações. O painel de visualização e outros locais no console do Google Cloud mostram apenas a formatação Markdown.

    Visualizar

    ## CPU utilization exceeded
    
    ### Summary
    
    The ${metric.display_name} of the ${resource.type}
    ${resource.label.instance_id} in the project ${resource.project} has
    exceeded 90% for over 15 minutes.
    
    ### Additional resource information
    
    Condition resource name: ${condition.name}  
    Alerting policy resource name: ${policy.name}  
    
    ### Troubleshooting and Debug References
    
    Repository with debug scripts: example.com  
    Internal troubleshooting guide: example.com  
    ${resource.type} dashboard: example.com
    

    Formatar na notificação

    Exemplo de como a documentação é renderizada em uma notificação.

    Para mais informações, consulte Anotar notificações com documentação definida pelo usuário e Como usar controles de canal.

  8. Clique em Nome e digite um nome para a política de alertas.

  9. Clique em Criar política.

Filtrar a série temporal selecionada

Os filtros garantem que apenas série temporal que atendam a algum conjunto de critérios sejam monitoradas. Ao aplicar filtros, você pode reduzir o número de linhas no gráfico, o que pode melhorar o desempenho dele. A agregação também pode reduzir a quantidade de dados monitorados. Os filtros garantem que somente séries temporais que atendam a algum conjunto de critérios sejam usadas. Quando você aplica filtros, há menos série temporal para avaliar, o que pode melhorar o desempenho do alerta.

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.

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, somente as série temporal que atendem a todos os critérios são monitoradas.

Para adicionar um filtro, clique em Adicionar filtro, preencha a caixa de diálogo e clique em Concluído. Na caixa de diálogo, use o campo Filtro para selecionar o critério pelo qual filtrar, selecione o operador de comparação e o valor. Cada linha na tabela a seguir lista um operador de comparação, o significado dele e um exemplo:

OperadorSignificadoExemplo
= Igualdade resource.labels.zone = "us-central1-a"
!= Desigualdade resource.labels.zone != "us-central1-a"
=~ Igualdade de Expressão regular2 monitoring.regex.full_match("^us.*")
!=~ Desigualdade de expressão regular2 monitoring.regex.full_match("^us.*")
starts_with O valor começa com resource.labels.zone = starts_with("us")
ends_with O valor termina com resource.labels.zone = ends_with("b")
has_substring O valor contém resource.labels.zone = has_substring("east")
one_of Uma resource.labels.zone = one_of("asia-east1-b", "europe-north1-a")
!starts_with O valor não começa com resource.labels.zone != starts_with("us")
!ends_with O valor não termina com resource.labels.zone != ends_with("b")
!has_substring O valor não contém resource.labels.zone != has_substring("east")
!one_of O valor não é um de resource.labels.zone != one_of("asia-east1-b", "europe-north1-a")

Resolver problemas

Esta seção contém dicas de solução de problemas.

Métrica não listada no menu de métricas disponíveis

Para monitorar uma métrica que não está listada no menu Selecionar uma métrica, siga um destes procedimentos:

  • Para criar uma política de alertas que monitore uma métrica do Google Cloud, expanda o menu Selecionar uma métrica e clique em Ativo. Quando desativado, o menu lista todas as métricas dos serviços do Google Cloud e todas as métricas com dados.

  • Para configurar uma condição para um tipo de métrica personalizada antes que ele gere dados, especifique o tipo de métrica usando um filtro do Monitoring:

    1. Selecione ? no cabeçalho da seção Selecionar métrica e, em seguida, selecione Modo de filtro direto na dica.
    2. Insira um filtro de monitoramento ou um seletor de série temporal. Para informações sobre a sintaxe, consulte os documentos a seguir:

Monitorar uma taxa de mudança

Para monitorar a taxa de alteração de um valor de métrica, defina o campo Função de janela contínua como Alteração percentual. Quando a condição é avaliada, o Monitoring calcula a taxa de alteração da métrica como uma porcentagem e a compara com o limite da condição. Esse processo de comparação segue duas etapas:

  1. Se a série temporal tiver um tipo de métrica DELTA ou CUMULATIVE, ela será convertida em um tipo de métrica GAUGE. Para mais informações sobre a conversão, consulte Tipos, tipos e conversões.
  2. O Monitoring calcula a porcentagem alterada comparando o valor médio na janela deslizante de 10 minutos mais recente com o valor médio da janela deslizante de 10 minutos antes do início do período de alinhamento.

Não é possível alterar a janela deslizante de 10 minutos usada para comparações em uma política de alertas de taxa de mudança. No entanto, você especifica o período de alinhamento ao criar a condição.

A seguir