Os modelos de regras de alerta do Prometheus permitem gerenciar centralmente as regras de alerta de várias instâncias do Prometheus em diferentes regiões, garantindo consistência e reduzindo a sobrecarga operacional.
Informações básicas
Ao lidar com múltiplas instâncias do Prometheus em várias regiões, criar regras de alerta individualmente para cada instância torna-se uma tarefa trabalhosa e difícil de manter sincronizada. Para resolver isso, o Managed Service for Prometheus oferece o recurso de modelo de regra de alerta. Esse recurso permite criar rapidamente regras de alerta para diversas instâncias do Prometheus e gerenciá-las de forma centralizada, diminuindo significativamente o esforço de manutenção.
Criar um modelo de regra de alerta do Prometheus
Faça login no console do ARMS.
No painel de navegação à esquerda, escolha .
Faça login no console do Managed Service for Prometheus.
Após o login, clique em Alert Rule Template no painel de navegação à esquerda.
No canto superior direito da página, clique em Create Prometheus Alert Rule Template.
-
Na página Create Prometheus Alert Rule, defina os parâmetros a seguir.
É possível criar um modelo de regra de alerta do Prometheus com base em um limiar estático ou em uma consulta PromQL personalizada.
Este tipo de verificação fornece métricas de alerta predefinidas. Selecione uma métrica e configure a regra por meio de opções intuitivas, sem precisar escrever uma consulta.
Para monitorar métricas não cobertas pela opção de limiar estático, utilize o tipo de verificação PromQL personalizado para definir sua própria consulta.
Tabela 1. Tipo de verificação de limiar estático
Parâmetro
Descrição
Exemplo
Alert Rule Template Name
Nome do modelo de regra de alerta.
Cluster de Produção - Alerta de Utilização de CPU de Contêiner
Alert Rule Template Description
Opcional. Descreve a finalidade do modelo, cenários aplicáveis e outras observações.
--
Check Type
Selecione Static Threshold.
Static Threshold
Alert Contact Group
Selecione um grupo de alertas.
Kubernetes Workloads
Alert Metric
Escolha a métrica a ser monitorada. As métricas disponíveis dependem do grupo de alertas selecionado.
Container CPU Utilization
Alert Condition
Configure o limiar da métrica que aciona o alerta.
Um alerta é acionado quando a utilização de CPU do contêiner é
greater than80%.Filter Condition
Especifique o escopo de recursos para a regra de alerta.
Condições de filtro disponíveis:
-
Traverse: Aplica a regra a todos os recursos na instância atual do Prometheus. Esta é a configuração padrão.
-
Equal To: Aplica a regra a um único recurso especificado.
-
Is not equal: Aplica a regra a todos os recursos, exceto a um único recurso especificado.
-
Match Regular Expression: Aplica a regra a todos os recursos cujos nomes correspondem à expressão regular especificada.
-
Do Not Match Regular Expression: Aplica a regra a todos os recursos, exceto aqueles que correspondem à expressão regular.
Instance IP: Traverse
Duration
-
O alerta é acionado imediatamente se qualquer ponto de dados atender à condição.
-
O alerta é acionado somente se a condição persistir por um número especificado de minutos.
1
Alert Level
Nível de severidade do alerta. O nível padrão é Default. A severidade aumenta nesta ordem: Default, P4, P3, P2 e P1.
Default
Alert Message
Conteúdo da notificação de alerta. Suporta sintaxe de modelo Go para personalização de variáveis.
Namespace: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / Container: {{$labels.container}} CPU utilization {{$labels.metrics_params_opt_label_value}} {{$labels.metrics_params_value}}%, current value {{ printf "%.2f" $value }}%
Advanced Settings
Tags
Defina tags para o alerta. As tags podem servir como condições de correspondência para políticas de notificação.
--
Annotations
Defina anotações para o alerta.
--
Tabela 2. Tipo de verificação PromQL personalizado
Parâmetro
Descrição
Exemplo
Alert Rule Template Name
Nome do modelo de regra de alerta.
Utilização de CPU do Pod excede 80%
Alert Rule Template Description
Opcional. Descreve a finalidade do modelo, cenários aplicáveis e outras observações.
--
Check Type
Selecione Custom PromQL.
Custom PromQL
Custom PromQL Statement
Consulta PromQL que define a condição de alerta.
max(container_fs_usage_bytes{pod!="", namespace!="arms-prom",namespace!="monitoring"}) by (pod_name, namespace, device)/max(container_fs_limit_bytes{pod!=""}) by (pod_name,namespace, device) * 100 > 90
Duration
-
O alerta é acionado imediatamente se qualquer ponto de dados atender à condição.
-
O alerta é acionado somente se a condição persistir por um número especificado de minutos.
1
Alert Level
Nível de severidade do alerta. O nível padrão é Default. A severidade aumenta nesta ordem: Default, P4, P3, P2 e P1.
Default
Alert Message
Conteúdo da notificação de alerta. Suporta sintaxe de modelo Go para personalização de variáveis.
Namespace: {{$labels.namespace}}/Pod: {{$labels.pod_name}}/Disk device: {{$labels.device}} utilization exceeds 90%, current value {{ printf "%.2f" $value }}%
Advanced Settings
Tags
Defina tags para o alerta. As tags podem servir como condições de correspondência para políticas de notificação.
--
Annotations
Defina anotações para o alerta.
--
Aplicar um modelo
Após criar um modelo de alerta do Prometheus, aplique-o para criar regras de alerta em uma instância do Prometheus ou atualizar regras existentes de uma instância do Prometheus com base nesse modelo.
Na página Prometheus Alert Rule Template, localize o modelo desejado e clique em Apply Template na coluna Actions.
-
No painel Apply Template, na aba Prometheus Instance Selection Mode, selecione uma ou mais instâncias do Prometheus e clique em OK.
NotaÉ possível filtrar instâncias do Prometheus por nome da instância, Prometheus e tipo de instância do Prometheus.
-
Na mensagem de confirmação exibida, escolha se deseja atualizar as regras de alerta existentes e clique em OK.
O Application Real-Time Monitoring Service (ARMS) cria regras de alerta nas instâncias do Prometheus selecionadas com base no modelo.
Caso você não selecione Update Created Alert Rules: Se uma instância do Prometheus selecionada já possuir uma regra de alerta criada a partir do modelo atual, a mensagem "An alert rule has been created from this template and will not be updated" será exibida e a regra existente não será atualizada.
-
Update Created Alert Rules: Se a instância do Prometheus selecionada já tiver regras de alerta criadas a partir do modelo atual, as regras de alerta do Prometheus serão atualizadas com base no conteúdo mais recente do modelo.
ImportanteSe você modificar manualmente uma regra de alerta, mas mantiver seu mapeamento com o modelo, suas alterações personalizadas serão substituídas pelo modelo.
Excluir um modelo
Quando um modelo de alerta do Prometheus não for mais necessário, exclua-o. Durante a exclusão, é possível escolher se deseja manter as regras de alerta criadas a partir desse modelo.
Na página Prometheus Alert Rule Template, localize o modelo que deseja excluir e clique em Delete na coluna Actions.
-
Na caixa de diálogo exibida, escolha se também deseja excluir as regras de alerta criadas a partir do modelo e clique em Confirm.
Ao selecionar Delete Alert Rules Created from Template: As regras de alerta do Prometheus associadas ao modelo são excluídas. No entanto, se uma regra de alerta do Prometheus tiver sido editada manualmente e salva com a opção Remove the mapping between this alert rule and the alert rule template selecionada, essa regra não será excluída.
Caso você não selecione Delete Alert Rules Created from Template: As regras de alerta do Prometheus criadas a partir do modelo são mantidas.
Visualizar regras de alerta criadas a partir de um modelo
Visualize e gerencie em lote as regras de alerta criadas a partir de um modelo.
Na página Prometheus Alert Rule Template, localize o modelo e clique em View Created Rules na coluna Actions.
-
Na página Alert Rules Created from Template, gerencie as regras de alerta em lote.
Ativar alertas em lote: Selecione as regras de alerta que deseja ativar e clique em Enable Alert Rules.
Desativar alertas em lote: Selecione as regras de alerta que deseja desativar e clique em Disable Alert Rules.
Excluir alertas em lote: Selecione as regras de alerta que deseja excluir e clique em Delete Alert Rules.
Observações de uso
Ao editar uma regra de alerta do Prometheus criada a partir de um modelo de regra de alerta do Prometheus, escolha se mantém o mapeamento com o modelo ao salvar.
Retain the mapping between this alert rule and the alert rule template: Se você mantiver o mapeamento, suas edições manuais poderão ser substituídas caso reaplique o modelo posteriormente na instância do Prometheus onde a regra reside e selecione a opção para atualizar as regras existentes.
Remove the mapping between this alert rule and the alert rule template: A regra torna-se independente do modelo. Renomeie a regra para evitar conflitos de nomes duplicados caso aplique o modelo novamente na mesma instância do Prometheus no futuro.