Criar políticas de alertas com valor de métrica previsto

Neste documento, descrevemos como usar o console do Google Cloud para criar um alerta. que envia notificações quando a política prevê que o limite será violado nos próximos janela de previsão. Uma previsão prevê se uma série temporal violar um limite dentro de uma janela de previsão, que é um período na futuro. A janela de previsão pode variar de 1 hora (3.600 segundos) a 2,5 dias (216.000 segundos).

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 um mensagem específica aparecer nos registros, consulte Como monitorar seus registros.

Este documento não descreve o seguinte:

Sobre as condições de previsão

É possível usar a previsão ao monitorar a maioria das métricas. No entanto, ao monitorar um recurso restrito, como cota, espaço em disco ou uso de memória, uma previsão pode notificar você antes que o limite seja violado. Com essa capacidade, você tem mais tempo para reagir ao impacto desse recurso restrito seja consumida antes que o limite seja violado.

Para cada série temporal que uma condição de previsão monitora, a condição instancia um algoritmo de decisão. Depois de treinar o algoritmo, gera uma previsão sempre que a condição é avaliada. Cada previsão é uma previsão de que a série temporal vai violar ou não o limite na janela de previsão. Se uma série temporal monitorada tiver periodicamente, o algoritmo de decisão essa série temporal incorpora o comportamento periódico nas previsões.

Uma condição de previsão é atendida quando uma das ou ambas ocorrem:

  • Todos os valores de uma série temporal durante uma janela específica de novo teste violam o limite.
  • Todas as previsões de uma série temporal específica que são feitas em uma janela de novo teste prever que a série temporal vai violar o limite dentro do janela de previsão.

O tempo de treinamento inicial de um algoritmo de decisão é o dobro do janela de previsão. Por exemplo, se a janela de previsão for de uma hora, são necessárias duas horas de treinamento. O algoritmo de decisão para cada série temporal são treinadas de forma independente. Enquanto um algoritmo de decisão é treinado, sua série temporal atende à condição somente quando os valores da série temporal violam o limite da janela de novo teste especificada.

Após a conclusão do treinamento inicial, cada algoritmo de decisão é continuamente usando dados que se estendem até seis vezes a duração da janela de previsão. Por exemplo, quando a janela de previsão é de uma hora, as seis horas mais recentes de dados são usados durante o treinamento contínuo.

Quando você configura uma condição de previsão e os dados param de chegar por mais tempo de 10 minutos, a previsão estará desativada e a condição opera como uma condição de limite de métrica.

Os incidentes são criados quando a previsão prevê que uma série temporal vai violar ao limite da condição na janela de previsão. O Monitoring fecha o incidente automaticamente quando a previsão prevê que a série temporal não vai violar o limite dentro da janela de previsão.

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ê 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 conseguir 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 Informações gerais sobre alertas.

  3. Configure os canais de notificação que você quer usar para receber notificações. Para fins de redundância, recomendamos que você crie 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 envie uma notificação com base em uma previsão, 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 Monitoramento.

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

    1. Clique em Selecionar uma métrica e navegue pelos menus para selecionar uma 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 o Barra de filtros . Por exemplo, se você digitar util, restringir o menu a mostra entradas que incluem util. As entradas aparecem quando são aprovadas um valor "contém" que não diferencia maiúsculas de minúsculas teste.
      • Para mostrar todos os tipos de métrica, mesmo as que não têm dados, clique em Ativo. Por padrão, os menus mostrar 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 o tipo de métrica com tipo de valor double ou int64; que é uma métrica de restrição e não uma métrica instância de VM da Amazon.

      Se você selecionar um tipo de métrica que resulta em mais de 64 série temporal sendo monitoradas, O monitoramento faz previsões as 64 série temporal com os valores mais próximos ou que já violam o limite. Para outros série temporal, os valores são comparados ao limite.

    2. Opcional: para monitorar um subconjunto da série temporal que corresponde ao tipos de métricas e recursos selecionados na etapa anterior; Clique em Adicionar filtro. Na caixa de diálogo de filtro, selecione o rótulo por para filtrar, um comparador e o valor do filtro. Por exemplo, o filtro zone =~ ^us.*.a$ usa uma expressão regular para corresponder a todos os dados de série temporal cujo nome da zona comece com us e termine com a. Para mais informações, consulte Filtre a série temporal selecionada.

    3. Opcional: para alterar o alinhamento dos pontos em uma série temporal, faça o seguinte: Na seção Transformar dados, defina a Janela contínua e Campos da função de janela contínua.

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

      Também é possível monitorar a taxa de mudança de um valor de métrica Use o campo Função de janela contínua para variaçã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 monitoradas por uma política ou quando você quer monitorar apenas uma coleção de série temporal. Por exemplo, em vez de monitorar CPU de cada instância de VM, convém calcular o média da utilização de CPU para todas as VMs em uma zona e, em seguida, monitorar 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 Em série temporal, Clique em Expandir.
      2. Defina o campo Agregação de série temporal com um valor diferente de none Por exemplo, para exibir o valor médio do 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 Em série temporal, Clique em Expandir.
      2. Defina o campo Agregação de série temporal com um valor diferente de none
      3. No campo Agrupar por série temporal, selecione os rótulos. pelo qual agrupar.

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

    5. Clique em Next.

  4. Configure o gatilho de condição:

    1. Selecione Previsão para o tipo de condição.

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

    3. Selecione um valor para a janela de previsão. O valor selecionado é a quantidade de tempo no futuro para a previsão. Você deve definir esse valor como pelo menos 1 hora (3.600 segundos) e no máximo 2,5 dias (216.000 segundos).

    4. Insira quando o valor previsto da métrica selecionada violar as limite usando as opções Posição do limite e Campos Valor do limite. Por exemplo, se você definir esses valores como Acima do limite e 10, qualquer valor previsto maior que 10 violará o limite.

    5. Opcional: expanda Opções avançadas e defina o valor do Testar novamente a janela. O valor padrão desse campo é Sem novo teste. Recomendamos que você defina esse campo para pelo menos 10 minutos.

      Por exemplo, suponha que você configure a condição de previsão série temporal podem fazer com que a condição seja atendida. Suponha também que o A janela de novo teste é definida como 15 minutos, e a janela de previsão. para 1 hora, e uma violação ocorre quando o valor da série temporal é maior que o Limite, que é definido como 10. A condição será atendida se uma das seguintes situações ocorrer:

      • Todos os valores de uma série temporal se tornam maiores que 10 e permanecem lá por pelo menos 15 minutos.
      • Em um intervalo de 15 minutos, cada previsão de uma série temporal que o valor aumentará para mais do que o limite de 10 em algum momento na próxima hora.
    6. Opcional: para especificar como o Monitoring avalia condição quando os dados pararem de chegar, abra Opções avançadas e use o menu Dados ausentes da avaliação.

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

      Quando faltam dados por mais de 10 minutos, uma condição de previsão para de fazer previsões e, em vez disso, usa o valor do campo Dados ausentes da avaliação para determinar como gerenciar incidentes. Quando as observações são reiniciadas, a previsão é reiniciada.

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

      Quando as condições são atendidas, a condição continua a ser quando os dados param de chegar. Se houver um incidente aberto para essa condição, o incidente permanece aberto. Quando um incidente está aberto e nenhum dado chegar, 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 as condições não sejam atendidas, a condição continua a não ser atendidos quando os dados pararem 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.

      Quando as condições são atendidas, a condição continua a ser quando os dados param de chegar. Se houver um incidente aberto para essa condição, o incidente permanece aberto. Quando um incidente é aberto e nenhum dado chega para a duração do fechamento automático mais 24 horas, o incidente é encerrado.

      Para condições que não são atendidas, essa configuração faz com que o a condição de limite de métrica se comporte como um metric-absence condition. Se os dados não chegarem no tempo especificado pela janela de novo teste, a condição é avaliada como atendida. Para uma política de alertas com uma condição, a condição que está 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 que são atendidas, a condição deixa de ser cumprida quando os dados param de chegar. Se houver um incidente aberto para essa condição, o incidente é encerrado.

      Caso as condições não sejam atendidas, a condição continua a não ser atendidos quando os dados pararem de chegar.

    7. Clique em Next.

  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. Quando você quiser para monitorar vários tipos de métrica, crie uma política com várias condições. Cada condição monitora um tipo de métrica. Depois de criar as condições, você especifica como as condições sã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 configurar essa condição.
    2. Clique em Próxima e configure como as condições são combinadas.
    3. Clique em Next para acessar as notificações e a documentação. configurar.
  6. Configure as notificações:

    1. Expanda o menu Notificações e nome e selecione sua notificação. canais. Para fins de redundância, recomendamos que você adicione a um a política de alertas de vários tipos de canais de notificação. 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 interdição de incidentes. Por padrão, quando você cria uma política de alertas com o no console do Google Cloud, uma notificação é enviada apenas criados.

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

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

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

      1. Clique em Adicionar rótulo e, no campo Chave, digite um nome para o rótulo. Os nomes de 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 ajudar no gerenciamento suas notificações, consulte Anotar incidentes com rótulos.

  7. Opcional: na seção Documentação, insira o conteúdo que quiser. incluído na notificação.

    Para formatar sua documentação, use texto simples, Markdown e variables. Você também pode inclua links para ajudar os usuários a depurar o incidente, como como links para playbooks internos, painéis do Google Cloud e recursos páginas de destino. Por exemplo, o modelo de documentação a seguir descreve um modelo de uso do Google para um recurso gce_instance e inclui várias variáveis para fazer referência à política de alertas e à condição REST do Google Cloud. O modelo de documentação depois direciona os leitores a páginas externas para ajudar na depuração.

    Quando as notificações são criadas, o Monitoring substitui as variáveis da documentação com os valores delas. Os valores substituem as variáveis somente nas notificações. O painel de visualização e outros lugares no console do Google Cloud para mostrar 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 os 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, é possível reduzir o número de linhas no gráfico, o que pode melhorar o desempenho do gráfico. Também é possível reduzir total de dados monitorados pela agregação. 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 a todas série temporal com o rótulo zone que começa com "us-central1", você pode usar o filtro zone=~"us-central1.*", que usa uma expressão regular para realizar a comparação.

Quando você filtra pelo ID do projeto ou pelo contêiner de recursos, use o operador de igualdade, (=). Ao filtrar por outros rótulos, use qualquer comparador compatível. Normalmente, é possível filtrar rótulos de métricas e recursos 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, em seguida, selecione o valor. Cada linha na tabela a seguir lista um operador de comparação, seu significado e uma 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, faça o seguinte: uma das seguintes opções:

  • 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 de 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 dela gera dados, é necessário especificar o tipo de métrica usando uma Filtro de monitoramento:

    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 mudança de um valor de métrica, defina a Campo Função de janela contínua para alteração percentual. Quando a condição é avaliada, o Monitoring calcula taxa de alteração da métrica como uma porcentagem e, em seguida, compara essa porcentagem ao 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, a série temporal será convertida em uma que tenha o tipo de métrica GAUGE. Para informações sobre o 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 para a valor médio da janela deslizante de 10 minutos antes do início do o 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.

Restrições

  • Você pode configurar a condição usando a interface orientada por menus do o console do Google Cloud ou os filtros do Monitoring. Não é possível configurar a condição usando a linguagem de consulta do Monitoring ou o PromQL.
  • Todas as métricas que têm um tipo de valor "double" ou "int64" são com suporte, exceto as de instâncias de VM da Amazon.

A seguir