

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Grafana Alerting
<a name="alerts-overview"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 8.x**.  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 10.x, consulte [Trabalhar no Grafana versão 10](using-grafana-v10.md).  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 9.x, consulte [Trabalhar no Grafana versão 9](using-grafana-v9.md).

O Grafana Alerting fornece alertas robustos e acionáveis que ajudam você a saber mais sobre problemas nos sistemas momentos após a ocorrência, minimizando a interrupção dos serviços.

O Amazon Managed Grafana inclui acesso a um sistema de alertas atualizado, o *Grafana Alerting*, que centraliza as informações dos alertas em uma única visualização pesquisável. Ele inclui os seguintes recursos:
+ Crie e gerencie alertas do Grafana em uma visão centralizada.
+ Crie e gerencie alertas gerenciados pelo Cortex e Loki por meio de uma única interface. Para obter mais informações, consulte [Gerenciar as regras de alertas](v9-alerting-managerules.md).
+ Veja informações de alertas do Prometheus, do Amazon Managed Service for Prometheus e de outras fontes de dados compatíveis com o Alertmanager.
+ Crie várias instâncias de alerta de uma única regra de alerta. Para obter mais informações, consulte [Regras únicas e multidimensionais](v9-alerting-managerules-grafana.md#v9-alerting-single-multi-rule).
+ Gerencie seus recursos de alerta com terraform ou provisionamento. APIs Para obter mais informações, consulte [Provisionar recursos do Grafana Alerting](v9-alerting-setup-provision.md).

Para um espaço de trabalho existente do Amazon Managed Grafana, o padrão é [Alertas clássicos do dashboard](old-alerts-overview.md). Para migrar para o Grafana Alerting, você deve [migrar para o Grafana Alerting](alert-opt-in.md).

Para saber mais sobre o Grafana Alerting, consulte [Novidades do Grafana Alerting](alerts-whats-new.md).

O Grafana Alerting tem quatro componentes principais:
+ [Regra de alerta](alert-rules.md): critérios de avaliação que determinam se um alerta é iniciado. Consiste em uma ou mais consultas e expressões, uma condição, a frequência da avaliação e, opcionalmente, a duração durante a qual a condição é atendida.
+ [Ponto de contato](alert-contact-points.md): canal para enviar notificações quando as condições de uma regra de alerta são atendidas. 
+ [Política de notificação](alert-notifications.md): conjunto de critérios de correspondência e agrupamento usado para determinar a frequência das notificações.
+ [Silêncios](alert-silences.md): data e critérios de correspondência usados para silenciar as notificações.

Quando o Grafana Alerting está habilitado, você pode:
+ [Criar regras de alerta gerenciadas pelo Grafana](alert-rules.md#create-grafana-alert-rule)
+ [Criar regras de alerta gerenciadas pelo Cortex ou Loki](alert-rules.md#create-alert-rule)
+ [Visualizar as regras de alerta existentes e gerenciar seu estado atual](alert-rules.md#manage-alert-rules)
+ [Visualizar o estado e a integridade das regras de alerta](alert-fundamentals.md#alerts-state)
+ [Adicionar ou editar um ponto de contato de alerta](alert-contact-points.md#alert-working-contact-points)
+ [Adicionar ou editar políticas de notificação](alert-notifications.md#alert-notifications-working)
+ [Adicionar ou editar silêncios](alert-silences.md)

## Limitações
<a name="alert-limitations"></a>
+ O sistema do Grafana Alerting pode recuperar regras de todas as fontes de dados disponíveis do Amazon Managed Service for Prometheus, Prometheus, Loki e Alertmanager. Talvez não seja possível buscar regras de outras fontes de dados compatíveis.
+ As regras de alerta definidas no Grafana, em vez de no Prometheus, enviam várias notificações ao ponto de contato. Se você estiver usando alertas nativos do Grafana, recomendamos que continue usando os alertas clássicos do dashboard e não habilite o novo recurso de alerta do Grafana. Se você quiser visualizar os alertas definidos na fonte de dados Prometheus, recomendamos que você habilite o Grafana Alerting, que envia somente uma única notificação para alertas criados no Alertmanager do Prometheus.
**nota**  
Essa limitação não é mais uma limitação nos espaços de trabalho do Amazon Managed Grafana compatíveis com o Grafana v10.4 e versões posteriores.

**Topics**
+ [Limitações](#alert-limitations)
+ [Novidades do Grafana Alerting](alerts-whats-new.md)
+ [Migrar alertas clássicos do dashboard para o Grafana Alerting](alert-opt-in.md)
+ [Conceitos básicos do alerta](alert-fundamentals.md)
+ [Criar e gerenciar regras do Grafana Alerting](alert-rules.md)
+ [Grupos de alertas](alert-groups.md)
+ [Silenciar notificações de alerta de fontes de dados do Prometheus](alert-silences.md)
+ [Trabalhar com pontos de contato](alert-contact-points.md)
+ [Usar modelos de mensagens](alert-message-templates.md)
+ [Trabalhar com políticas de notificação](alert-notifications.md)

# Novidades do Grafana Alerting
<a name="alerts-whats-new"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 8.x**.  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 10.x, consulte [Trabalhar no Grafana versão 10](using-grafana-v10.md).  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 9.x, consulte [Trabalhar no Grafana versão 9](using-grafana-v9.md).

O Grafana Alerting tem vários aprimoramentos em relação ao alerta clássico do dashboard.

## Criar alertas multidimensionais
<a name="alerts-new-dimensional"></a>

Agora você pode criar uma única regra de alerta que oferece visibilidade em todo o sistema, gerando várias instâncias de alerta de uma única regra de alerta. Por exemplo, você pode criar uma regra para monitorar o uso do disco de vários pontos de montagem em um único host. O mecanismo de avaliação retorna várias séries temporais de uma única consulta, com cada série temporal identificada pelo seu conjunto de rótulos.

**nota**  
Cada instância de alerta conta para a cota de alertas. As regras multidimensionais que criam mais instâncias do que as que podem ser acomodadas na cota de alertas não são avaliadas e retornam um erro de cota. Para obter mais informações, consulte [Cota alcançada de erros](alert-rules.md#rule-quota-reached).

## Criar alertas fora dos dashboards
<a name="alerts-new-not-dashboard"></a>

Ao contrário dos alertas clássicos do dashboard, com o Grafana Alerting, você pode criar consultas e expressões que combinam dados de várias fontes de maneiras exclusivas. Você ainda pode vincular dashboards e painéis às regras de alerta usando seu ID e pode solucionar rapidamente os problemas do sistema sob observação.

Como os alertas unificados não estão mais diretamente vinculados às consultas do painel, eles não incluem imagens ou valores de consulta no e-mail de notificação. Você pode usar modelos de notificação personalizados para visualizar os valores da consulta.

## Criar regras de alerta do Loki e do Cortex
<a name="alerts-new-loki-cortex"></a>

No Grafana Alerting, você pode gerenciar as regras de alerta do Loki e do Cortex usando a mesma interface de usuário e API dos alertas gerenciados pelo Grafana.

## Visualizar e pesquisar alertas do Amazon Managed Service for Prometheus e outras fontes de dados Prometheus compatíveis
<a name="alerts-new-prometheus"></a>

Os alertas das fontes de dados Amazon Managed Service for Prometheus e Prometheus compatíveis agora estão listados na interface de alertas. Você pode pesquisar rótulos em várias fontes de dados para encontrar rapidamente alertas relevantes.

## Alertas especiais para estado de alerta NoData e erro
<a name="alerts-new-error"></a>

O Grafana Alerting gera alertas especiais que têm os seguintes rótulos, quando a avaliação de uma regra de alerta produz um estado `NoData` ou `Error`:
+ `alertname` com o valor `DatasourceNoData` ou `DatasourceError`, dependendo do estado.
+ `rulename` com o nome da regra de alerta à qual o alerta especial pertence.
+ `datasource_uid` tem o UID da fonte de dados que causou o estado.
+ Todos os rótulos e anotações da regra original.

Você pode lidar com esses alertas da mesma forma como lida com os alertas regulares, por exemplo, adicionando um silêncio ou roteamento para um ponto de contato.

**nota**  
Se a regra usar várias fontes de dados e uma ou mais não retornarem dados, o alerta especial será criado para cada fonte de dados que causou o estado de alerta.

# Migrar alertas clássicos do dashboard para o Grafana Alerting
<a name="alert-opt-in"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 8.x**.  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 10.x, consulte [Trabalhar no Grafana versão 10](using-grafana-v10.md).  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 9.x, consulte [Trabalhar no Grafana versão 9](using-grafana-v9.md).

Espaços de trabalho existentes, ou espaços de trabalho que optam por não usar o Grafana Alerting, usam o alerta clássico do dashboard. Para migrar para o novo Grafana Alerting, primeiro é necessário escolher o recurso.

Você pode configurar sua instância do Amazon Managed Grafana para usar alertas do Grafana usando o Console de gerenciamento da AWS, o AWS CLI ou a API Amazon Managed Grafana. Para obter detalhes sobre como configurar o Amazon Managed Grafana, incluindo ativar ou desativar o Grafana Alerting, consulte [Configurar um espaço de trabalho do Amazon Managed Grafana](AMG-configure-workspace.md).

**nota**  
Ao usar o Grafana Alerting, as regras de alerta definidas no Grafana, em vez de no Prometheus, enviam várias notificações para o seu ponto de contato. Se você estiver usando alertas nativos do Grafana, recomendamos que continue usando os alertas clássicos do dashboard e não habilite o novo recurso de alerta do Grafana. Se você quiser visualizar os alertas definidos na fonte de dados Prometheus, recomendamos que você habilite o Grafana Alerting, que envia somente uma única notificação para alertas criados no Alertmanager do Prometheus.  
Essa limitação foi removida dos espaços de trabalho do Amazon Managed Grafana compatíveis com o Grafana v10.4 e versões posteriores.

## Migrar para o sistema do Grafana Alerting
<a name="alert-opt-in-migrating"></a>

Quando o Grafana Alerting está ativado, os alertas clássicos existentes do dashboard migram em um formato compatível com o Grafana Alerting. Na página de alertas da instância do Grafana, você pode visualizar os alertas migrados junto com os novos alertas. Com o Grafana Alerting, as regras de alerta gerenciadas pelo Grafana enviam várias notificações em vez de um único alerta quando são correspondidas.

O acesso de leitura e gravação aos alertas clássicos do dashboard e aos alertas do Grafana é regido pelas permissões das pastas que os armazenam. Durante a migração, as permissões clássicas de alerta do dashboard são correspondidas com as novas permissões de regras da seguinte forma:
+ Se o dashboard do alerta original tiver permissões, a migração criará uma pasta nomeada com este formato `Migrated {"dashboardUid": "UID", "panelId": 1, "alertId": 1}` para corresponder às permissões do dashboard original (incluindo as permissões herdadas da pasta).
+ Se não houver permissões no dashboard e ele estiver em uma pasta, a regra será vinculada a essa pasta e herdará suas permissões.
+ Se não houver permissões no dashboard e ele estiver na pasta Geral, a regra será vinculada à pasta Alertas gerais e ela herdará as permissões padrão.

**nota**  
Como não há a opção de `Keep Last State` para alertas `NoData` no Grafana, essa opção passa a ser `NoData` durante a migração das regras clássicas. A opção `Keep Last State` de tratamento de `Error` é migrada para uma nova opção `Error`. Para corresponder ao comportamento do `Keep Last State`, em ambos os casos, durante a migração, o Amazon Managed Grafana cria automaticamente um silêncio para cada regra de alerta com duração de um ano.

Os canais de notificação são migrados para uma configuração do Alertmanager com as rotas e os receptores apropriados. Os canais de notificação padrão são adicionados como pontos de contato à rota padrão. Canais de notificação não associados a nenhum alerta do dashboard seguem a rota `autogen-unlinked-channel-recv`.

### Limitações
<a name="alert-migration-limitations"></a>
+ O sistema do Grafana Alerting pode recuperar regras de todas as fontes de dados disponíveis do Prometheus, Loki e Alertmanager. Talvez não seja possível obter regras de alerta de outras fontes de dados compatíveis.
+ A migração de ida e volta entre os alertas do Grafana e o alerta clássico do dashboard pode resultar na perda de dados dos recursos compatíveis em um sistema, mas não no outro.
**nota**  
Caso migre de volta para o alerta clássico do dashboard, você perderá todas as alterações realizadas na configuração de alertas definida enquanto o Grafana Alerting estava ativado, incluindo todas as novas regras de alerta criadas.

# Conceitos básicos do alerta
<a name="alert-fundamentals"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 8.x**.  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 10.x, consulte [Trabalhar no Grafana versão 10](using-grafana-v10.md).  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 9.x, consulte [Trabalhar no Grafana versão 9](using-grafana-v9.md).

Esta seção fornece informações sobre os conceitos básicos do Grafana Alerting.

## Conceitos de alertas
<a name="alert-fundamentals-terms"></a>

A tabela a seguir descreve os principais conceitos do Grafana Alerting.


| Principal conceito ou recurso | Definição | 
| --- | --- | 
|  Fontes de dados para alertas  |  Selecione as fontes de dados das quais você deseja consultar e visualizar métricas, logs e rastreamentos.  | 
|  Agendador  |  Avalia as regras de alerta; o componente que periodicamente executa consultas em fontes de dados. É aplicável apenas às regras gerenciadas pelo Grafana.  | 
|  Alertmanager  |  Gerencia o roteamento e o agrupamento de instâncias de alertas.  | 
|  Regra de alerta  |  Um conjunto de critérios de avaliação para quando uma regra de alerta deve ser acionada. Uma regra de alerta consiste em uma ou mais consultas e expressões, uma condição, a frequência da avaliação e a duração em que a condição é atendida. Uma regra de alerta pode produzir várias instâncias de alertas.  | 
|  Instância de alerta  |  Uma instância de alerta é uma instância de uma regra de alerta. Uma regra de alerta unidimensional tem uma instância de alerta. Uma regra de alerta multidimensional tem uma ou mais instâncias de alertas. Uma única regra de alerta que corresponda a vários resultados, como CPU contra 10 VMs, é contabilizada como várias (neste caso, 10) instâncias de alerta. Esse número pode variar com o tempo. Por exemplo, uma regra de alerta que monitora o uso da CPU para todos VMs em um sistema tem mais instâncias de alerta à medida que VMs são adicionadas. Para obter mais informações sobre cotas de instâncias de alertas, consulte [Cota alcançada de erros](alert-rules.md#rule-quota-reached).  | 
|  Grupo de alertas  |  O Alertmanager agrupa instâncias de alertas por padrão usando os rótulos da política de notificação raiz. Isso controla a eliminação de duplicação e os grupos de instâncias de alertas que são enviadas aos pontos de contato.  | 
|  Ponto de contato  |  Defina como seus contatos são notificados quando uma regra de alerta é acionada.  | 
|  Modelos de mensagens  |  Crie modelos personalizados reutilizáveis e use-os em pontos de contato.  | 
|  Política de notificação  |  Conjunto de regras para onde, quando e como os alertas são agrupados e roteados para os pontos de contato.  | 
|  Rótulos e matchers de rótulos  |  Os rótulos identificam de forma exclusiva as regras de alertas. Eles vinculam as regras de alertas a silêncios e políticas de notificação, determinando qual política deve lidar com eles e quais regras de alerta devem ser silenciadas.  | 
|  Silêncios  |  Interrompa as notificações de uma ou mais instâncias de alerta. A diferença entre tempo de silêncio e de desativação de áudio é que o silêncio dura por uma janela de tempo específica, e a desativação de áudio acontece em uma programação recorrente. Usa matcher de rótulos para silenciar instâncias de alertas.  | 
|  Tempos de desativação de áudio  |  Especifique um intervalo de tempo em que você não deseja que novas notificações sejam geradas ou enviadas. Você pode congelar as notificações de alerta por períodos recorrentes, como durante um período de manutenção. Deve estar vinculado a uma política de notificação existente.  | 

## Fontes de dados de alertas
<a name="alert-sources"></a>

Os alertas gerenciados pelo Grafana consultam as fontes de dados de backend a seguir que têm os alertas habilitados.
+ Fontes de dados integradas ou desenvolvidas e mantidas pelo Grafana: `Alertmanager`, `Graphite`, `Prometheus` (incluindo o Amazon Managed Service for Prometheus), `Loki`, `InfluxDB`, `Amazon OpenSearch Service`, `Google Cloud Monitoring`, `Amazon CloudWatch`, `Azure Monitor`, `MySQL`, `PostgreSQL`, `MSSQL`, `OpenTSDB`, `Oracle` e `Azure Monitor`.

## Alertas sobre dados numéricos
<a name="alert-numeric"></a>

Os dados numéricos que não estão em um formato de série temporal podem ser alertados diretamente ou passados para as expressões do servidor. Isso permite mais processamento e eficiência resultante na fonte de dados, além de simplificar as regras de alertas. Ao alertar sobre dados numéricos em vez de dados de séries temporais, não há necessidade de reduzir cada série temporal rotulada em um único número. Em vez disso, os números rotulados são retornados para o Grafana.

### Dados tabulares
<a name="alert-tabular-data"></a>

Esse recurso é compatível com fontes de dados de backend que consultam dados tabulares, incluindo fontes de dados de SQL, como MySQL, Postgres, MSSQL e Oracle.

Uma consulta com alertas gerenciados pelo Grafana ou expressões do servidor é considerada numérica com estas fontes de dados:
+ Se a opção `Format AS` estiver definida como `Table` na consulta da fonte de dados.
+ Se a resposta da tabela retornada ao Grafana da consulta incluir apenas uma coluna numérica (por exemplo, int, double ou float) e, opcionalmente, colunas de string adicionais.

Se houver colunas de string, essas colunas se tornarão rótulos. O nome da coluna torna-se o nome do rótulo, e o valor de cada linha torna-se o valor do rótulo correspondente. Se várias linhas forem retornadas, cada linha deverá ser identificada exclusivamente por seus rótulos.

### Exemplo
<a name="alert-tabular-example"></a>

Se você tiver uma tabela MySQL chamada Diskspace, como a seguir.


| Hora | Host | Disk | PercentFree | 
| --- | --- | --- | --- | 
|  7 de junho de 2021  |  web1  |  /etc  |  3  | 
|  7 de junho de 2021  |  web2  |  /var  |  4  | 
|  7 de junho de 2021  |  web3  |  /var  |  8  | 
|  …  |  …  |  …  |  …  | 

Você pode consultar a filtragem de dados a tempo, mas sem retornar a série temporal ao Grafana. Por exemplo, veja abaixo um alerta que seria iniciado por host, disco quando houvesse menos de 5% de espaço livre.

```
SELECT Host, Disk, CASE WHEN PercentFree < 5.0 THEN PercentFree ELSE 0 END FROM (
  SELECT
      Host,
      Disk,
      Avg(PercentFree)
  FROM DiskSpace
  Group By
    Host,
    Disk
  Where __timeFilter(Time)
```

Essa consulta retorna a resposta de tabela a seguir ao Grafana.


| Host | Disk | PercentFree | 
| --- | --- | --- | 
|  web1  |  /etc  |  3  | 
|  web2  |  /var  |  4  | 
|  web3  |  /var  |  0  | 

Quando essa consulta é usada como **condição** em uma regra de alerta, então os casos em que o valor for diferente de zero alertarão. Como resultado, três instâncias de alerta são produzidas, conforme a tabela a seguir.


| Rótulos | Status | 
| --- | --- | 
|  \$1Host=web1,disk=/etc\$1  |  Geração de alertas  | 
|  \$1Host=web2,disk=/var\$1  |  Geração de alertas  | 
|  \$1Host=web3,disk=/var\$1  |  Normal  | 

## Alertmanager
<a name="alert-alertmanager"></a>

O Grafana inclui suporte integrado para o Alertmanager do Prometheus. O Alertmanager ajuda a agrupar e gerenciar as regras de alertas, adicionando uma camada de orquestração sobre os mecanismos de alertas. Por padrão, as notificações dos alertas gerenciados pelo Grafana são executados pelo Alertmanager incorporado, que faz parte do núcleo do Grafana. Você pode configurar os pontos de contato, as políticas de notificação e os modelos do Alertmanager na interface de usuário do Grafana Alerting selecionando a opção Grafana no menu suspenso do Alertmanager.

O Grafana Alerting é compatível com a configuração externa do Alertmanager (para obter mais informações sobre o Alertmanager como fonte de dados externa, consulte [Conectar-se a uma fonte de dados Alertmanager](data-source-alertmanager.md)). Quando você adiciona um Alertmanager externo, o menu suspenso dele mostra uma lista de fontes de dados externas disponíveis do Alertmanager. Selecione uma fonte de dados para criar e gerenciar alertas para fontes de dados autônomas do Cortex ou Loki.

## Estado e integridade das regras de alertas
<a name="alerts-state"></a>

O estado e a integridade das regras de alertas ajudam você a entender vários indicadores-chave de status sobre os alertas. Há três componentes principais: estado do alerta, estado da regra do alerta e integridade da regra do alerta. Embora estejam relacionados, cada componente fornece informações ligeiramente diferentes.

**Estado da regra do alerta**
+ **Normal**: nenhuma das séries temporais retornadas pelo mecanismo de avaliação está em um estado `Pending` ou `Firing`.
+ **Pendente**: pelo menos uma das séries temporais retornadas pelo mecanismo de avaliação está no estado `Pending`.
+ **Disparado**: pelo menos uma das séries temporais retornadas pelo mecanismo de avaliação está no estado `Firing`.

**Estado do alerta**
+ **Normal**: a condição da regra do alerta é **false** para cada série temporal retornada pelo mecanismo de avaliação.
+ **Alerta**: a condição da regra do alerta é **true** para pelo menos uma série temporal retornada pelo mecanismo de avaliação. A duração durante a qual a condição deve ser true antes que um alerta seja iniciado, se a definição tiver sido atendida ou excedido.
+ **Pendente**: a condição da regra do alerta é **true** para pelo menos uma série temporal retornada pelo mecanismo de avaliação. A duração durante a qual a condição deve ser true antes que um alerta seja iniciado, se a definição não tiver sido atendida.
+ **NoData**— A regra de alerta não retornou uma série temporal, todos os valores da série temporal são nulos ou todos os valores da série temporal são zero.
+ **Erro**: erro ao tentar avaliar uma regra do alerta.

**Integridade da regra do alerta**
+ **Ok**: nenhum erro ao avaliar uma regra do alerta.
+ **Erro**: erro ao avaliar uma regra do alerta.
+ **NoData**— A ausência de dados em pelo menos uma série temporal retornada durante a avaliação de uma regra.

# Criar e gerenciar regras do Grafana Alerting
<a name="alert-rules"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 8.x**.  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 10.x, consulte [Trabalhar no Grafana versão 10](using-grafana-v10.md).  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 9.x, consulte [Trabalhar no Grafana versão 9](using-grafana-v9.md).

Uma regra de alerta é um conjunto de critérios de avaliação que determina se um alerta é iniciado. A regra consiste em uma ou mais consultas e expressões, uma condição, a frequência da avaliação e, opcionalmente, a duração durante a qual a condição é atendida.

Enquanto consultas e expressões selecionam o conjunto de dados a ser avaliado, uma condição define o limite que um alerta deve atingir ou exceder para criar um alerta. Um intervalo especifica com que frequência uma regra de alerta é avaliada. A duração, quando configurada, indica por quanto tempo uma condição deve ser atendida. As regras também podem definir o comportamento de alertas na ausência de dados.

As seções a seguir descrevem a criação e o gerenciamento de diferentes tipos de regras de alerta do Grafana.

**Topics**
+ [Criar regras de alerta gerenciadas pelo Cortex ou Loki](#create-alert-rule)
+ [Criar regras de gravação gerenciadas pelo Cortex ou Loki](#create-alert-recording-rule)
+ [Criar regras de alertas gerenciadas pelo Grafana](#create-grafana-alert-rule)
+ [Anotações e rótulos para regras de alerta](#alert-rule-labels)
+ [Gerenciar regras de alertas](#manage-alert-rules)
+ [Namespaces e grupos de regras do Cortex ou Loki](#alert-rule-groups)

## Criar regras de alerta gerenciadas pelo Cortex ou Loki
<a name="create-alert-rule"></a>

Usando o Grafana, você pode criar regras de alerta para uma instância externa do Cortex ou do Loki.

**nota**  
O Cortex é o banco de dados de séries temporais usado pelas fontes de dados Amazon Managed Service for Prometheus e Prometheus.

**Pré-requisitos**
+ Verifique se você tem permissões de escrita na fonte de dados Prometheus. Do contrário, você não poderá criar ou atualizar as regras de alerta gerenciadas do Cortex.
+ Para as fontes de dados Cortex e Loki, ative a API Ruler configurando seus respectivos serviços.
  + **Loki**: o tipo de armazenamento `local` de regras, padrão para a fonte de dados Loki, é compatível apenas com a visualização de regras. Para editar regras, configure um dos outros tipos de armazenamento.
  + **Cortex**: use o prefixo `/api/prom` legado, não `/prometheus`. A fonte de dados Prometheus é compatível com o Cortex e o Prometheus, e o Grafana espera que a API Query e a API Ruler estejam no mesmo URL. Você não pode fornecer um URL separado para a API Ruler.

**nota**  
Se você não quiser gerenciar as regras de alerta para uma fonte de dados Loki ou Prometheus específica, acesse as configurações e desmarque a caixa de seleção **Gerenciar alertas por meio da interface de usuário de alertas**.

**Para adicionar uma regra de alerta gerenciada pelo Cortex ou Loki**

1. No console do Grafana, no menu Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas** listando os existentes.

1. Escolha **Nova regra de alerta**.

1. Na **Etapa 1**, adicione o nome, o tipo e o local de armazenamento da regra, da seguinte forma:
   + Em **Nome da regra**, adicione um nome descritivo. Esse nome é exibido na lista de regras de alerta. Também é o rótulo `alertname` de cada instância de alerta criada dessa regra.
   + No menu suspenso **Tipo de regra**, selecione **Alerta gerenciado pelo Cortex ou Loki**.
   + No menu suspenso **Selecionar fonte de dados**, selecione uma fonte de dados Prometheus ou Loki.
   + No menu suspenso **Namespace**, selecione um namespace de regra existente. Do contrário, escolha **Adicionar novo** e insira um nome para criar um. Os namespaces podem conter um ou mais grupos de regras e ter apenas uma finalidade organizacional. Para obter mais informações, consulte [Namespaces e grupos de regras do Cortex ou Loki](#alert-rule-groups).
   + No menu suspenso **Grupo**, selecione um grupo existente no namespace selecionado. Do contrário, escolha **Adicionar novo** e insira um nome para criar um. As regras recém-criadas são anexadas ao final do grupo. As regras em um grupo são executadas sequencialmente em intervalos regulares, com o mesmo tempo de avaliação.

1. Na **Etapa 2**, adicione a consulta a ser avaliada.

   O valor pode ser uma expressão PromQL ou LogQL. A regra iniciará um alerta se o resultado da avaliação tiver pelo menos uma série com um valor maior que 0. Um alerta é criado para cada série.

1. Na **Etapa 3**, adicione as condições.

   Na caixa de texto Por da condição, especifique por quanto tempo a condição deve ser true antes que o alerta seja iniciado. Se você especificar `5m`, as condições deverão ser true por cinco minutos antes que o alerta seja iniciado.
**nota**  
Depois que uma condição é atendida, o alerta entra no estado `Pending`. Se a condição permanecer ativa pelo período especificado, o alerta mudará para o estado `Firing`. Se não for mais satisfeito, ele reverterá para o estado `Normal`.

1. Na **Etapa 4**, adicione outros metadados associados à regra.
   + Adicione uma descrição e um resumo para personalizar as mensagens de alerta. Use as diretrizes em [Anotações e rótulos para regras de alerta](#alert-rule-labels).
   + Adicione URL, painel, painel e alerta IDs do Runbook.
   + Adicione rótulos personalizados.

1. Escolha **Pré-visualizar alertas** para avaliar a regra e ver quais alertas ela vai produzir. Essa opção vai exibir uma lista de alertas com o estado e o valor de cada um.

1. Escolha **Salvar** para salvar a regra, ou **Salvar e sair** para salvar a regra e voltar para a página **Alertas**.

## Criar regras de gravação gerenciadas pelo Cortex ou Loki
<a name="create-alert-recording-rule"></a>

Você pode criar e gerenciar regras de gravação para uma instância externa do Cortex ou do Loki. As regras de gravação calculam expressões frequentemente necessárias ou computacionalmente caras e salvam os resultados como um novo conjunto de séries temporais. Consultar essa nova série temporal é mais rápida, especialmente para dashboards, pois eles consultam a mesma expressão toda vez que os dashboards são atualizados.

**Pré-requisitos**

Para as fontes de dados Cortex e Loki, ative a API Ruler configurando seus respectivos serviços.
+ **Loki**: o tipo de armazenamento `local` de regras, padrão para a fonte de dados Loki, é compatível apenas com a visualização de regras. Para editar regras, configure um dos outros tipos de armazenamento.
+ **Córtex**: ao configurar uma fonte de dados Prometheus do Grafana para apontar para o Cortex, use o prefixo `/api/prom` legado, não `/prometheus`. A fonte de dados Prometheus é compatível com o Cortex e o Prometheus, e o Grafana espera que a API Query e a API Ruler estejam no mesmo URL. Você não pode fornecer um URL separado para a API Ruler.

**nota**  
Se você não quiser gerenciar as regras de alertas para uma fonte de dados Loki ou Prometheus específica, acesse as configurações e desmarque a caixa de seleção **Gerenciar alertas por meio da interface de usuário de alertas**.

**Para adicionar uma regra de gravação gerenciada pelo Cortex ou Loki**

1. No console do Grafana, no menu Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas** listando os existentes.

1. Escolha **Nova regra de alerta**.

1. Na **Etapa 1**, adicione o nome, o tipo e o local de armazenamento da regra, conforme a seguir.
   + Em **Nome da regra**, adicione um nome descritivo. Esse nome é exibido na lista de regras de alerta. Também é o rótulo `alertname` de cada instância de alerta criada dessa regra.
   + No menu suspenso **Tipo de regra**, selecione **Alerta gerenciado pelo Cortex ou Loki**.
   + No menu suspenso **Selecionar fonte de dados**, selecione uma fonte de dados Prometheus ou Loki.
   + No menu suspenso **Namespace**, selecione um namespace de regra existente. Do contrário, escolha **Adicionar novo** e insira um nome para criar um. Os namespaces podem conter um ou mais grupos de regras e ter apenas uma finalidade organizacional. Para obter mais informações, consulte [Namespaces e grupos de regras do Cortex ou Loki](#alert-rule-groups).
   + No menu suspenso **Grupo**, selecione um grupo existente no namespace selecionado. Do contrário, escolha **Adicionar novo** e insira um nome para criar um. As regras recém-criadas são anexadas ao final do grupo. As regras em um grupo são executadas sequencialmente em intervalos regulares, com o mesmo tempo de avaliação.

1. Na **Etapa 2**, adicione a consulta a ser avaliada.

   O valor pode ser uma expressão PromQL ou LogQL. A regra iniciará um alerta se o resultado da avaliação tiver pelo menos uma série com um valor maior que 0. Um alerta é criado para cada série.

1. Na **Etapa 3**, adicione outros metadados associados à regra.
   + Adicione uma descrição e um resumo para personalizar as mensagens de alerta. Use as diretrizes em [Anotações e rótulos para regras de alerta](#alert-rule-labels).
   + Adicione URL, painel, painel e alerta IDs do Runbook.
   + Adicione rótulos personalizados.

1. Escolha **Salvar** para salvar a regra, ou **Salvar e sair** para salvar a regra e voltar para a página **Alertas**.

## Criar regras de alertas gerenciadas pelo Grafana
<a name="create-grafana-alert-rule"></a>

O Grafana permite criar regras de alertas que consultam uma ou mais fontes de dados, reduzem ou transformam os resultados e os comparam ou fixam limites. Quando eles são processados, o Grafana envia notificações para o ponto de contato.

**nota**  
Criar regras de alerta gerenciadas do Grafana ao usar o Grafana Alerting faz com que várias notificações sejam enviadas quando a regra é correspondida. Alguns provedores de pontos de contato podem ter opções configuráveis para desduplicar as notificações.

**Para adicionar uma regra gerenciada do Grafana**

1. No console do Grafana, no menu Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas** listando os existentes.

1. Escolha **Nova regra de alerta**.

1. Na **Etapa 1**, adicione o nome, o tipo e o local de armazenamento da regra, da seguinte forma:
   + Em **Nome da regra**, adicione um nome descritivo. Esse nome é exibido na lista de regras de alerta. Também é o rótulo `alertname` de cada instância de alerta criada dessa regra.
   + No menu suspenso **Tipo de regra**, selecione **Alerta gerenciado pelo Grafana**.
   + No menu suspenso **Pasta**, selecione a pasta em que você deseja armazenar a regra. Se você não selecionar uma pasta, a regra será armazenada na pasta `General`. Para criar uma pasta, selecione a lista suspensa e insira um nome para a pasta.

1. Na **Etapa 2**, adicione as consultas e expressões a serem avaliadas.
   + Mantenha o nome padrão ou passe o mouse sobre ele e escolha o ícone de edição para alterar o nome.
   + Para consultas, selecione uma fonte de dados no menu suspenso.
   + Adicione uma ou mais [consultas](panel-queries.md) ou expressões (para obter detalhes sobre expressões, consulte [Expressões](https://grafana.com/docs/grafana/next/panels/query-a-data-source/) na *documentação do Grafana*.
   + Para cada expressão, selecione a **condição Clássica** para criar uma única regra de alerta, ou escolha entre as opções **Matemática**, **Redução** e **Reamostragem** para gerar alertas separados para cada série. Para obter detalhes sobre essas opções, consulte [Regras únicas e multidimensionais](#single-multi-rule).
   + Escolha **Executar consultas** para verificar se a consulta teve êxito.

1. Na **Etapa 3**, adicione as condições.
   + No menu suspenso **Condição**, selecione a consulta ou a expressão para iniciar a regra de alerta.
   + Em **Avaliar a cada**, especifique a frequência da avaliação. Deve ser um múltiplo de dez segundos. Por exemplo, `1m`, `30s`.
   + Em **Avaliar por**, especifique por quanto tempo a condição deve ser true antes que um alerta seja iniciado.
**nota**  
Depois que uma condição é violada, o alerta entra no estado `Pending`. Se a condição permanecer violada pelo período especificado, o alerta mudará para o estado `Firing`. Se não for mais satisfeito, ele reverterá para o estado `Normal`.
   + Em **Configurar tratamento de erros e ausência de dados**, configure o comportamento dos alertas na ausência de dados. Use as diretrizes em [Lidar com casos de erro e ausência de dados](#rule-no-data-error).
   + Escolha **Pré-visualizar alertas** para verificar o resultado da execução da consulta no momento. A pré-visualização exclui as condições de tratamento de erros e ausência de dados.

1. Na **Etapa 4**, adicione outros metadados associados à regra.
   + Adicione uma descrição e um resumo para personalizar as mensagens de alerta. Use as diretrizes em [Anotações e rótulos para regras de alerta](#alert-rule-labels).
   + Adicione URL, painel, painel e alerta IDs do Runbook.
   + Adicione rótulos personalizados.

1. Escolha **Salvar** para salvar a regra, ou **Salvar e sair** para salvar a regra e voltar para a página **Alertas**.

### Regras únicas e multidimensionais
<a name="single-multi-rule"></a>

Para as regras de alerta gerenciadas pelo Grafana, você pode criar uma regra com uma condição clássica ou uma regra multidimensional.

**Regra unidimensional (condição clássica)**

Use uma expressão de condição clássica para criar uma regra que inicia um único alerta quando sua condição é atendida. Para uma consulta que retorna várias séries, o Grafana não rastreia o estado de alerta de cada série. Como resultado, o Grafana envia apenas um único alerta, mesmo quando as condições de alerta são atendidas para várias séries.

Para obter mais informações sobre como formatar expressões, consulte [Expressões](https://grafana.com/docs/grafana/next/panels/query-a-data-source/) na *documentação do Grafana*.

**Regra multidimensional**

Para gerar uma instância de alerta separada para cada série retornada na consulta, crie uma regra multidimensional.

**nota**  
Cada instância de alerta gerada por uma regra multidimensional conta para sua cota total de alertas. As regras não são avaliadas quando você atinge sua cota de alertas. Para obter mais informações sobre cotas para regras multidimensionais, consulte [Cota alcançada de erros](#rule-quota-reached).

Para criar várias instâncias de uma única regra, use as expressões `Math`, `Reduce` ou `Resample` para criar uma regra multidimensional. Por exemplo, você pode:
+ Adicione uma expressão `Reduce` para cada consulta para agregar valores no intervalo de tempo selecionado em um único valor. (não é necessário para [regras que usam dados numéricos](alert-fundamentals.md#alert-numeric)).
+ Adicione uma expressão `Math` com a condição para a regra. Isso não é necessário no caso de uma consulta ou uma expressão de redução já retornar 0 se a regra não iniciar um alerta, ou um número positivo se ela precisar iniciar um alerta. 

  Alguns exemplos: 
  + `$B > 70`se ele deve iniciar um alerta caso o valor de B query/expression seja maior que 70. 
  + `$B < $C * 100` caso deva iniciar um alerta se o valor de B for menor que o valor de C multiplicado por 100. Se as consultas que estão sendo comparadas tiverem várias séries em seus resultados, as séries de consultas diferentes serão correspondidas se tiverem os mesmos rótulos, ou se uma for um subconjunto da outra.

**nota**  
O Grafana não é compatível com consultas de alerta com variáveis de modelo. Mais informações estão disponíveis na página [Template variables are not supported in alert queries while setting up Alert](https://community.grafana.com/t/template-variables-are-not-supported-in-alert-queries-while-setting-up-alert/2514) da comunidade.



**Considerações de performance para regras multidimensionais**

Cada instância de alerta conta para a cota de alertas. As regras multidimensionais que criam mais instâncias do que as que podem ser acomodadas na cota de alertas não são avaliadas e retornam um erro de cota. Para obter mais informações, consulte [Cota alcançada de erros](#rule-quota-reached).

Os alertas multidimensionais podem ter um alto impacto na performance do espaço de trabalho do Grafana, bem como na performance das fontes de dados, pois o Grafana os consulta para avaliar as regras de alertas. As considerações a seguir podem ser úteis quando você está tentando otimizar a performance do sistema de monitoramento.
+ **Frequência da avaliação da regra**: a propriedade **Avaliar a cada** de uma regra de alerta controla a frequência da avaliação da regra. Recomendamos usar a menor frequência de avaliação aceitável. 
+ **Cardinalidade do conjunto de resultados**: o número de instâncias de alerta que você cria com uma regra afeta a performance. Suponha que você esteja monitorando os erros de resposta da API para cada caminho de API, em cada VM na sua frota. Esse conjunto tem uma cardinalidade do número de caminhos multiplicado pelo número de. VMs Você pode reduzir a cardinalidade do conjunto de resultados, por exemplo, monitorando o total de erros por VM em vez de por caminho por VM.
+ **Complexidade da consulta**: consultas que as fontes de dados podem processar e responder rapidamente consomem menos recursos. Embora essa consideração seja menos importante do que as outras listadas acima, se você as reduziu ao máximo, observar a performance de consultas individuais pode fazer a diferença. Você também deve estar ciente do impacto na performance que a avaliação dessas regras tem nas fontes de dados. As consultas de alerta geralmente são a grande maioria das consultas tratadas pelos bancos de dados de monitoramento, portanto, os mesmos fatores de carga que afetam a instância do Grafana também as afetam.

### Cota alcançada de erros
<a name="rule-quota-reached"></a>

Há uma cota para o número de instâncias de alerta que você pode ter em um único espaço de trabalho. Ao atingir esse número, você não poderá mais criar regras de alerta nesse espaço de trabalho. Com alertas multidimensionais, o número de instâncias de alerta pode variar com o tempo.

É importante lembrar os aspectos a seguir ao trabalhar com instâncias de alerta.
+ Se você criar somente regras unidimensionais, cada regra será uma única instância de alerta. Você pode criar, no máximo, o mesmo número de regras em um único espaço de trabalho que sua cota de instâncias de alerta.
+ Regras multidimensionais criam várias instâncias de alerta, no entanto, o número não é conhecido até que sejam avaliadas. Por exemplo, se você criar uma regra de alerta que rastreia o uso da CPU de suas instâncias do Amazon EC2, poderá haver 50 instâncias do EC2 quando você a criar (e, portanto, 50 instâncias de alerta), mas se você adicionar mais 10 instâncias do EC2 uma semana depois, a próxima avaliação terá 60 instâncias de alerta.

  O número de instâncias de alerta é avaliado quando você cria um alerta multidimensional, e você não pode criar um que coloque você logo acima da cota de instâncias de alerta. Como o número de instâncias de alerta pode mudar, sua cota é verificada sempre que as regras são avaliadas.
+ No momento da avaliação da regra, se uma regra fizer com que você ultrapasse sua cota para instâncias de alerta, essa regra não será avaliada até que uma atualização seja feita na regra de alerta que coloque a contagem total de instâncias de alerta abaixo da cota de serviço. Quando isso acontece, você recebe uma notificação de alerta informando que sua cota foi atingida (a notificação usa a política de notificação da regra que está sendo avaliada). A notificação inclui uma anotação de `Error` com o valor `QuotaReachedError`.
+ Uma regra que faz com que um `QuotaReachedError` pare de ser avaliado. A avaliação só é retomada quando uma atualização é feita e a avaliação após a atualização não causa, por si só, um `QuotaReachedError`. Uma regra que não está sendo avaliada mostra o erro de **Cota atingida** no console do Grafana.
+ Você pode reduzir o número de instâncias de alerta removendo as regras de alerta ou editando alertas multidimensionais para ter menos instâncias de alerta (por exemplo, ter um alerta sobre erros por VM, em vez de um alerta sobre erros por API em uma VM).
+ Para retomar as avaliações, atualize o alerta e salve-o. Você pode atualizá-lo para diminuir o número de instâncias de alerta ou, se tiver feito outras alterações para diminuir o número de instâncias de alerta, poderá salvá-lo sem alterações. Se puder ser retomado, ele será. Se isso causar outro `QuotaReachedError`, você não poderá salvá-lo.
+ Quando um alerta é salvo e retoma a avaliação sem ultrapassar a cota de alertas, o erro **Cota atingida** pode continuar sendo exibido no console do Grafana por algum tempo (até o intervalo de avaliação). No entanto, a avaliação da regra de alerta é iniciada e os alertas serão enviados se o limite da regra for atingido.
+ Para obter detalhes sobre a cota de alertas, bem como outras cotas, consulte [Cotas de serviço do Amazon Managed Grafana](AMG_quotas.md).

### Lidar com casos de erro e ausência de dados
<a name="rule-no-data-error"></a>

Escolha opções de como lidar com o comportamento de alertas na ausência de dados ou quando há erros.

As opções para lidar com a ausência de dados são listadas na tabela a seguir.


| Opção de ausência de dados | Comportamento | 
| --- | --- | 
|  Nenhum dado  |  Crie um alerta `DatasourceNoData` com o nome e o UID da regra de alerta e o UID da fonte de dados que não retornou dados como rótulos.  | 
|  Geração de alertas  |  Defina o estado da regra do alerta como `Alerting`.  | 
|  OK  |  Defina o estado da regra do alerta como `Normal`.  | 

As opções para lidar com casos de erro são listadas na tabela a seguir.


| Opção de erro ou tempo limite | Comportamento | 
| --- | --- | 
|  Geração de alertas  |  Defina o estado da regra do alerta como `Alerting`  | 
|  OK  |  Defina o estado da regra do alerta como `Normal`  | 
|  Erro  |  Crie um alerta `DatasourceError` com o nome e o UID da regra de alerta e o UID da fonte de dados que não retornou dados como rótulos.  | 

## Anotações e rótulos para regras de alerta
<a name="alert-rule-labels"></a>

Anotações e rótulos são pares de chave/valor associados a alertas provenientes da regra de alerta, da resposta da fonte de dados e como resultado da avaliação da regra de alerta. Eles podem ser usados diretamente em notificações de alerta ou em [modelos](alert-message-templates.md) e [funções de modelo](alert-message-templates.md#alert-template-functions) para criar contatos de notificação dinamicamente.

**Anotações**

As anotações são pares de chave/valor que fornecem informações adicionais sobre um alerta. Você pode usar as seguintes anotações: `description`, `summary`, `runbook_url`, `alertId`, `dashboardUid` e `panelId`. Elas são exibidas em detalhes de regras e alertas na interface do usuário e podem ser usadas em modelos de mensagens de pontos de contato.

**Rótulos**

Os rótulos são pares de chave/valor que contêm informações sobre um alerta. O rótulo definido para um alerta é gerado e adicionado em todo o processo de avaliação e notificação de alertas. Eles são usados das formas a seguir.
+ O conjunto completo de rótulos para um alerta identifica exclusivamente esse alerta nos alertas do Grafana.
+ O Alertmanager usa rótulos para corresponder alertas a [silêncios](alert-silences.md) e [grupos de alertas](alert-groups.md) nas [políticas de notificação](alert-notifications.md).
+ A interface do usuário de alertas exibe rótulos para cada instância de alerta gerada pela avaliação dessa regra.
+ Os pontos de contato podem acessar rótulos para gerar notificações dinamicamente que contêm informações específicas do alerta que está resultando em uma notificação.
+ Os rótulos podem ser adicionados a uma [regra de alerta](#alert-rules). Esses rótulos configurados manualmente podem usar funções de modelo e referenciar outros rótulos. Os rótulos adicionados a uma regra de alerta aqui têm precedência no caso de um conflito entre os rótulos.

As variáveis de modelo a seguir estão disponíveis ao expandir anotações e rótulos.


| Name (Nome) | Description | 
| --- | --- | 
|  `$labels`  |  Os rótulos da consulta ou condição. Por exemplo, `{{ $labels.instance }}` e `{{ $labels.job }}`. Isso não está disponível quando a regra usa uma condição clássica.  | 
|  `$values`  |  Os valores de todas as expressões de redução e matemáticas que foram avaliadas para essa regra de alerta. Por exemplo, `{{ $values.A }}`, `{{ $values.A.Labels }}` e `{{ $values.A.Value }}`, em que `A` é o `refID` da expressão. Isso não está disponível quando a regra usa uma condição clássica.  | 
|  `$value`  |  A string valores da instância de alerta. Por exemplo, .`[ var='A' labels={instance=foo} value=10 ]`  | 

## Gerenciar regras de alertas
<a name="manage-alert-rules"></a>



A página **Alertas** lista as regras de alerta. Por padrão, as regras são agrupadas por tipos de fontes de dados. A seção **Grafana** lista as regras gerenciadas pelo Grafana, e a seção **Cortex/Loki** lista as regras para fontes de dados compatíveis com o Prometheus. Você pode visualizar as regras de alerta para fontes de dados compatíveis com o Prometheus, mas não pode editá-las.

### Visualizar regras de alertas
<a name="manage-alerts-view"></a>

Ao usar o Grafana Alerting, você pode visualizar todos os alertas em uma página.

**Para visualizar detalhes de alertas**

1. No console do Grafana, no menu do Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas**. Por padrão, as regras são exibidas em grupos por tipo de fonte de dados. Você também pode visualizar pelo estado atual de cada alerta (eles são descritos com mais detalhes no texto a seguir).

1. Em **Visualizar como**, você pode alternar entre as visualizações de grupo e estado escolhendo a opção de sua preferência.

1. Escolha a seta ao lado de uma linha para exibir mais detalhes dessa linha. Os detalhes de uma regra incluem anotações, fontes de dados, consultas e rótulos de regras, bem como uma lista de instâncias de alerta resultantes da regra.

**Visualização Grupo**

A visualização Grupo mostra as regras de alerta do Grafana agrupadas por pasta e as regras de alerta do Loki ou Prometheus agrupadas por `namespace` \$1 `group`. Esta é a visualização padrão da lista de regras, destinada ao gerenciamento de regras. Você pode expandir cada grupo para ver uma lista de regras dele. Expanda ainda mais uma regra para visualizar os detalhes. Você também pode expandir os botões de ação e os alertas resultantes da regra para ver os detalhes.

**Visualização Estado**

A visualização Estado mostra as regras de alerta agrupadas por estado. Use essa visualização para ter uma visão geral de quais regras estão em qual estado. Cada regra pode ser expandida para visualizar seus detalhes. Botões de ação e quaisquer alertas gerados por essa regra, e cada alerta pode ser expandido ainda mais para exibir seus detalhes.

**Filtrar regras de alerta**

Você pode filtrar as regras de alerta que aparecem na página **Alertas** de diversas formas.
+ Você pode filtrar para exibir as regras que consultam uma fonte de dados específica escolhendo **Selecionar fontes de dados** e selecionando uma fonte de dados para a qual filtrar.
+ Você pode filtrar por rótulos escolhendo os critérios de pesquisa em **Pesquisar por rótulo**. Alguns critérios de amostra incluem `environment=production`, `region=~US|EU`, `severity!=warning`.
+ Você pode filtrar para exibir as regras em um estado específico escolhendo **Filtrar alertas por estado**, e depois selecionando o estado que deseja visualizar.

### Editar ou excluir regras de alerta
<a name="manage-alerts-edit"></a>

As regras de alerta gerenciadas do Grafana só podem ser editadas ou excluídas por usuários com permissões de edição para a pasta que armazena as regras. As regras de alerta para uma instância externa do Cortex ou do Loki podem ser editadas ou excluídas por usuários com funções de editor ou administrador.

**Para editar ou excluir uma regra**

1. Expanda uma regra até ver os controles de regra para **Visualizar**, **Editar** e **Excluir**.

1. Escolha **Editar** para abrir a página de criação de regras. Faça atualizações da mesma forma como ao criar uma regra. Para obter detalhes, consulte as instruções em [Criar regras de alertas gerenciadas pelo Grafana](#create-grafana-alert-rule) ou [Criar regras de alerta gerenciadas pelo Cortex ou Loki](#create-alert-rule).

1. Opcionalmente, escolha **Excluir** para excluir uma regra.

## Namespaces e grupos de regras do Cortex ou Loki
<a name="alert-rule-groups"></a>

Você pode organizar as regras. As regras são criadas dentro de grupos de regras, e os grupos de regras são organizados em namespaces. As regras dentro de um grupo de regras são executadas sequencialmente em intervalos regulares. O intervalo padrão é de um minuto. Você pode renomear namespaces e grupos de regras do Cortex ou Loki e editar intervalos de avaliação de grupos de regras.

**Para editar um namespace ou grupo de regras**

1. No console do Grafana, no menu do Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas**.

1. Navegue até uma regra no namespace ou no grupo de regras que você deseja editar.

1. Selecione o ícone de **Editar** (caneta).

1. Faça alterações no grupo de regras ou no namespace.
**nota**  
Para namespaces, você só pode editar o nome. Para grupos de regras, você altera o nome ou o intervalo de avaliação das regras no grupo. Por exemplo, você pode escolher `1m` para avaliar as regras a cada minuto ou `30s` para avaliar a cada 30 segundos.

1. Escolha **Salvar alterações**.

# Grupos de alertas
<a name="alert-groups"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 8.x**.  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 10.x, consulte [Trabalhar no Grafana versão 10](using-grafana-v10.md).  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 9.x, consulte [Trabalhar no Grafana versão 9](using-grafana-v9.md).

Os grupos de alertas mostram alertas agrupados de uma instância do Alertmanager. Por padrão, os alertas são agrupados pelas chaves de rótulo da política raiz em [Trabalhar com políticas de notificação](alert-notifications.md). O agrupamento de alertas comuns em um único grupo de alertas evita que alertas duplicados sejam iniciados.

**Para visualizar agrupamentos de alertas**

1. No console do Grafana, no menu do Grafana, escolha o ícone de **Alertas** (sino) e depois o item de **Agrupamento de alertas** para abrir a página que lista os grupos existentes.

1. No menu suspenso do **Alertmanager**, selecione um Alertmanager externo como a fonte de dados. Por padrão, o Alertmanager do `Grafana` está selecionado.

1. No menu suspenso de **grupo personalizado por**, selecione uma combinação de rótulos para visualizar um agrupamento diferente do padrão. Você pode usar essa visualização para depurar ou verificar o agrupamento de políticas de notificação.

Alertas sem rótulos especificados no agrupamento da política raiz ou no agrupamento personalizado são adicionados a um grupo com um cabeçalho de `No grouping`.

**Filtrar alertas**

Você pode usar os seguintes filtros para visualizar alertas que correspondam a critérios específicos:
+ **Pesquisar por rótulo**: em **Pesquisar**, insira uma rótulo existente para ver alertas que correspondam ao rótulo. Por exemplo, `environment=production`, `region=~US|EU`, `severity!=warning`.
+ **Filtrar alertas por estado**: em **Estados**, selecione dos estados `Active`, `Suppressed` ou `Unprocessed` para visualizar alertas neles.

# Silenciar notificações de alerta de fontes de dados do Prometheus
<a name="alert-silences"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 8.x**.  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 10.x, consulte [Trabalhar no Grafana versão 10](using-grafana-v10.md).  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 9.x, consulte [Trabalhar no Grafana versão 9](using-grafana-v9.md).

Para fontes de dados externas do Alertmanager (incluindo o Amazon Managed Service for Prometheus), você pode suprimir as notificações de alerta com um *silêncio*. Um silêncio só impede a criação de notificações: os silêncios não impedem que as regras de alerta sejam avaliadas e não impedem que as instâncias de alerta sejam mostradas na interface do usuário. Ao silenciar um alerta, você especifica uma janela de tempo para que ele seja suprimido.

Você pode configurar silêncios para uma fonte de dados externa do Alertmanager.

**nota**  
Para suprimir as notificações de alerta em intervalos regulares (por exemplo, durante períodos regulares de manutenção), use [Tempos de desativação de áudio](alert-notifications.md#alert-notification-muting) em vez de silêncios.

**Para adicionar um silêncio**

1. No console do Grafana, no menu do Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas**.

1. Escolha **Silêncios** para abrir uma página listando os [pontos de contato](alert-contact-points.md) existentes.

1. Escolha o Alertmanager externo no menu suspenso **Alertmanager**.

1. Selecione **Novo silêncio**.

1. Selecione a data de início e de término em **Início e término do silêncio** para indicar quando o silêncio deve entrar em vigor e quando deve terminar.

   Como alternativa à definição de um horário de término, em **Duração**, especifique por quanto tempo o silêncio será aplicado. Isso atualiza automaticamente a hora de término no campo **Início e término do silêncio**.

1. Nos campos **Nome** e **Valor**, insira um ou mais *rótulos correspondentes*. Os matchers determinam a quais regras o silêncio se aplica. A correspondência do rótulo é discutida em mais detalhes após este procedimento.

1. Opcionalmente, adicione um **comentário** ou modifique o **Criador** para definir o proprietário do silêncio.

**Correspondência de rótulos para supressão de alertas**

Ao criar um silêncio, você cria um conjunto de *rótulos correspondentes* como parte do silêncio. Esse é um conjunto de regras sobre rótulos que devem corresponder para que o alerta seja suprimido. Os rótulos correspondentes consistem em três partes:
+ **Rótulo**: o nome do rótulo correspondente. Ele deve corresponder exatamente ao nome do rótulo do alerta.
+ **Operador**: o operador usado para comparar o valor do rótulo com o valor do rótulo correspondente. Os operadores disponíveis são:
  + `=` Selecione rótulos cujo valor corresponda exatamente à string fornecida.
  + `!=` Selecione rótulos cujo valor não corresponda à string fornecida.
  + `=~` Selecione rótulos cujo valor corresponda ao valor interpretado pelo regex da string fornecida (a string fornecida é interpretada como uma expressão regular).
  + `!=` Selecione rótulos que não correspondam à expressão regular fornecida.
+ **Valor**: o valor ao qual corresponder ao valor do rótulo. Pode corresponder como uma string ou como uma expressão regular, dependendo do operador escolhido.

O silêncio termina na data de término indicada, mas você pode encerrar manualmente a supressão a qualquer momento.

**Para finalizar um silêncio manualmente**

1. Na página **Alertas**, escolha **Silêncios** para ver a lista de silêncios existentes.

1. Selecione o silêncio que você deseja encerrar e escolha **Cancelar silêncio**. Isso encerra a supressão do alerta.
**nota**  
O cancelamento do silêncio encerra a supressão do alerta, como se o horário de término estivesse definido para o horário atual. Os silêncios que terminaram (automática ou manualmente) são retidos e listados por cinco dias. Você não pode remover um silêncio da lista manualmente.

**Criar um link para o formulário de criação de silêncio**

Você pode criar uma URL para o formulário de criação de silêncio com os detalhes já preenchidos. Os operadores podem usar isso para suprimir rapidamente um alarme durante um evento operacional.

Ao criar um link para um formulário de silêncio, use um parâmetro de consulta `matchers` para especificar os rótulos correspondentes e um parâmetro de consulta `comment` para especificar um comentário. O parâmetro `matchers` requer um ou mais valores no formulário `[label][operator][value]`, separados por vírgulas.

**Exemplo de URL**

Para criar um link para um formulário de silêncio, com os rótulos correspondentes `severity=critical` e`cluster!~europe-.*`, com um comentário que diga `Silencing critical EU alerts`, use um URL como a seguir. *mygrafana*Substitua pelo nome do host da sua instância Grafana.

```
https://mygrafana/alerting/silence/new?matchers=severity%3Dcritical%2Ccluster!~europe-*&comment=Silence%20critical%20EU%20alert
```

Para vincular a uma nova página de silêncio para um Alertmanager externo, adicione um parâmetro de consulta `alertmanager` com o nome da fonte de dados Alertmanager, como `alertmanager=myAlertmanagerdatasource`.

# Trabalhar com pontos de contato
<a name="alert-contact-points"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 8.x**.  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 10.x, consulte [Trabalhar no Grafana versão 10](using-grafana-v10.md).  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 9.x, consulte [Trabalhar no Grafana versão 9](using-grafana-v9.md).

Use pontos de contato para definir como os contatos serão notificados quando um alerta for iniciado. Um ponto de contato pode ter um ou mais tipos de pontos de contato, por exemplo, Amazon Simple Notification Service ou Slack. Quando um alerta é iniciado, uma notificação é enviada para todos os tipos de pontos de contato listados para um ponto de contato. Opcionalmente, use [Usar modelos de mensagens](alert-message-templates.md) para personalizar as mensagens de notificação para os tipos de ponto de contato.

**nota**  
Você pode criar e editar pontos de contato para alertas gerenciados pelo Grafana. Os pontos de contato dos alertas do Alertmanager são somente leitura.

## Trabalhar com pontos de contato
<a name="alert-working-contact-points"></a>

Os procedimentos a seguir detalham como adicionar, editar, testar e excluir pontos de contato.

**Para adicionar um ponto de contato**

1. No console do Grafana, no menu do Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas**.

1. Escolha **Pontos de contato** e, em seguida, **Novo ponto de contato**.

1. No menu suspenso do **Alertmanager**, selecione um Alertmanager. O Grafana Alertmanager é selecionado por padrão.

1. Insira um **Nome** para o ponto de contato.

1. Em **Tipo de ponto de contato**, escolha um tipo e os campos obrigatórios com base nesse tipo. Por exemplo, se você escolher o Slack, insira os canais e os usuários do Slack que devem ser contatados.

1. Se disponível para o ponto de contato selecionado, opcionalmente, escolha as **configurações opcionais** para especificar configurações adicionais.

1. Em **Configurações de notificação**, selecione opcionalmente **Desabilitar mensagem resolvida** se não quiser ser notificado quando um alerta for resolvido.

1. Se o seu ponto de contato precisar de mais tipos de pontos de contato, você pode escolher **Novo tipo de ponto de contato** e repetir as etapas para cada tipo de ponto de contato necessário.

1. Escolha **Salvar ponto de contato** para salvar as alterações.

**Para editar um ponto de contato**

1. Escolha **Pontos de contato** para ver uma lista dos pontos de contato existentes.

1. Selecione o ponto de contato a ser editado e, em seguida, escolha o ícone de **Editar** (caneta).

1. Faça as alterações necessárias e escolha **Salvar ponto de contato** para salvar as alterações.

Depois que seu ponto de contato for criado, você poderá enviar uma notificação de teste para verificar se ele está configurado corretamente.

**Para enviar uma notificação de teste**

1. Escolha **Pontos de contato** para abrir a lista de pontos de contato existentes.

1. Selecione o ponto de contato a ser testado e, em seguida, escolha o ícone de **Editar** (caneta).

1. Selecione o ícone de **Teste** (avião de papel).

1. Escolha se deseja enviar uma notificação de teste predefinida ou escolha **Personalizado** para adicionar suas próprias anotações e rótulos personalizados na notificação de teste.

1. Escolha **Enviar notificação de teste** para testar o alerta com os pontos de contato fornecidos.

Você pode excluir pontos de contato que não estão sendo usados por uma política de notificação.

**Para excluir um ponto de contato**

1. Escolha **Pontos de contato** para abrir a lista de pontos de contato existentes.

1. Selecione o ponto de contato a ser excluído e escolha o ícone de **Excluir** (lixeira).

1. Na caixa de diálogo de confirmação, escolha **Sim, excluir**.

**nota**  
Se o ponto de contato estiver sendo usado por uma política de notificação, você deverá excluir ou editar a política de notificação para usar outro ponto de contato antes de excluí-lo.

## Lista de notificadores compatíveis
<a name="alert-supported-notifiers"></a>


|  Nome  |  Tipo  | 
| --- | --- | 
| Amazon SNS  |  sns  | 
|  OpsGenie  |  opsgenie  | 
| PagerDuty  |  pagerduty  | 
| Slack  |  slack  | 
|  VictorOps  |  victorops  | 

# Usar modelos de mensagens
<a name="alert-message-templates"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 8.x**.  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 10.x, consulte [Trabalhar no Grafana versão 10](using-grafana-v10.md).  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 9.x, consulte [Trabalhar no Grafana versão 9](using-grafana-v9.md).

As notificações enviadas via [Trabalhar com pontos de contato](alert-contact-points.md) são criadas usando *modelos de mensagens*. Os modelos padrão do Grafana são baseados no [sistema de modelos do Go](https://golang.org/pkg/text/template), em que alguns campos são avaliados como texto, enquanto outros são avaliados como HTML (o que pode afetar o escape).

Como a maioria dos campos de ponto de contato pode ser modelada, você pode criar modelos personalizados reutilizáveis e usá-los em vários pontos de contato. O tópico [Dados do modelo](#alert-template-data) lista as variáveis que estão disponíveis para modelos.

**Usar modelos**

Os modelos são usados para criar uma mensagem. Por exemplo, com uma mensagem de alerta do Slack, você pode definir o título e o corpo no ponto de contato. O exemplo a seguir mostra como usar modelos padrão para criar um título que contém uma contagem de alertas disparados e resolvidos e um corpo que lista os alertas e seus status.
+ **Título**:

  ```
  {{ len .Alerts.Firing }} firing, {{ len .Alerts.Resolved }} resolved
  ```
+ **Corpo do texto**: 

  ```
  {{ range .Alerts }}{{ .Status }}: {{ .Labels.alertname }}
  {{end }}
  ```

Você pode criar seus próprios modelos personalizados, como no exemplo a seguir.
+ **Título**:

  ```
  {{ template "slack.default.title" .}}
  ```
+ **Corpo do texto**: 

  ```
  {{ template "mymessage" .}}
  ```

Veja a seguir um modelo de exemplo.

```
{{ define "myalert" }}
  [{{.Status}}] {{ .Labels.alertname }}

  Labels:
  {{ range .Labels.SortedPairs }}
    {{ .Name }}: {{ .Value }}
  {{ end }}

  {{ if gt (len .Annotations) 0 }}
  Annotations:
  {{ range .Annotations.SortedPairs }}
    {{ .Name }}: {{ .Value }}
  {{ end }}
  {{ end }}

  {{ if gt (len .SilenceURL ) 0 }}
    Silence alert: {{ .SilenceURL }}
  {{ end }}
  {{ if gt (len .DashboardURL ) 0 }}
    Go to dashboard: {{ .DashboardURL }}
  {{ end }}
{{ end }}
```

Os procedimentos a seguir mostram como criar, editar e excluir modelos personalizados de mensagens.

**Para criar um modelo de mensagem**

1. No console do Grafana, no menu do Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas**.

1. Escolha **Pontos de contato**.

1. No menu suspenso do **Alertmanager**, selecione a instância do Alertmanager para a qual você deseja criar um modelo de mensagem. O padrão é o Grafana Alertmanager.

1. Escolha **Adicionar modelo**.

1. Adicione um **Nome** descritivo.

1. Adicione o **Conteúdo** do modelo, por exemplo:

   ```
   {{ define "mymessage" }}
     {{ range .Alerts }}
       [{{ .Status }}] {{ range .Labels }} {{ .Name }}={{.Value }}{{end}}
     {{ end }}
   {{ end }}
   ```

   A tag `define` na seção Conteúdo atribui o nome do modelo. Essa tag é opcional e, quando omitida, o nome do modelo é derivado do campo **Nome**. Quando ambos são especificados, é uma prática recomendada mantê-los iguais.

1. Selecione **Salvar modelo**.

**nota**  
O HTML nos modelos de mensagens de alerta é renderizado como texto, com os caracteres de controle de escape. A renderização de HTML na notificação resultante não é compatível com o Grafana.

**Para editar um modelo de mensagem**

1. Na página **Alertas**, escolha **Pontos de contato** para abrir a lista de pontos de contato.

1. Na **tabela Modelo**, encontre o modelo que você deseja editar e escolha o ícone de **Editar** (caneta).

1. Faça suas alterações e escolha **Salvar modelo**.

**Para excluir um modelo de mensagem**

1. Na página **Alertas**, escolha **Pontos de contato** para abrir a lista de pontos de contato.

1. Na **tabela Modelo**, encontre o modelo que você deseja remover e escolha o ícone de **Excluir** (lixeira).

1. Escolha **Sim, excluir** para excluir o modelo.

**Modelos aninhados**

Você pode incorporar modelos em outros modelos.

Por exemplo, você pode definir um fragmento de modelo usando a palavra-chave `define`:

```
{{ define "mytemplate" }}
  {{ len .Alerts.Firing }} firing. {{ len .Alerts.Resolved }} resolved.
{{ end }}
```

Você pode então incorporar modelos personalizados nesse fragmento usando a palavra-chave `template`. Por exemplo:

```
Alert summary:
{{ template "mytemplate" . }}
```

Você pode usar as opções a seguir de modelo incorporado para incorporar modelos personalizados.


| Nome | Observações | 
| --- | --- | 
|  `default.title`  |  Exibe informações de status de alto nível.  | 
|  `default.message`  |  Fornece um resumo formatado dos alertas disparados e resolvidos.  | 

**Exemplos de modelos personalizados**

Aqui estão alguns exemplos de como usar modelos personalizados.

Modelo para renderizar um único alerta:

```
{{ define "myalert" }}
  [{{.Status}}] {{ .Labels.alertname }}

  Labels:
  {{ range .Labels.SortedPairs }}
    {{ .Name }}: {{ .Value }}
  {{ end }}

  {{ if gt (len .Annotations) 0 }}
  Annotations:
  {{ range .Annotations.SortedPairs }}
    {{ .Name }}: {{ .Value }}
  {{ end }}
  {{ end }}

  {{ if gt (len .SilenceURL ) 0 }}
    Silence alert: {{ .SilenceURL }}
  {{ end }}
  {{ if gt (len .DashboardURL ) 0 }}
    Go to dashboard: {{ .DashboardURL }}
  {{ end }}
{{ end }}
```

Modelo para renderizar toda a mensagem de notificação:

```
{{ define "mymessage" }}
  {{ if gt (len .Alerts.Firing) 0 }}
    {{ len .Alerts.Firing }} firing:
    {{ range .Alerts.Firing }} {{ template "myalert" .}} {{ end }}
  {{ end }}
  {{ if gt (len .Alerts.Resolved) 0 }}
    {{ len .Alerts.Resolved }} resolved:
    {{ range .Alerts.Resolved }} {{ template "myalert" .}} {{ end }}
  {{ end }}
{{ end }}
```

## Dados do modelo
<a name="alert-template-data"></a>

Os dados a seguir são passados para os modelos de mensagem.


| Nome | Tipo | Observações | 
| --- | --- | --- | 
|  `Receiver`  |  string  |  Nome do ponto de contato para o qual a notificação está sendo enviada.  | 
|  `Status`  |  string  |  disparado se pelo menos um alerta estiver sendo disparado, caso contrário, resolvido.  | 
|  `Alerts`  |  Alerta  |  Lista de objetos de alerta incluídos nessa notificação (veja abaixo).  | 
|  `GroupLabels`  |  KeyValue  |  Rótulos pelos quais esses alertas foram agrupados.  | 
|  `CommonLabels`  |  KeyValue  |  Rótulos comuns a todos os alertas incluídos nessa notificação.  | 
|  `CommonAnnotations`  |  KeyValue  |  Anotações comuns a todos os alertas incluídos nessa notificação.  | 
|  `ExternalURL`  |  string  |  Link de retorno para o Grafana que enviou a notificação. Se estiver usando o Alertmanager externo, volte para ele.  | 

O tipo `Alerts` expõe duas funções para filtrar os alertas retornados.
+ `Alerts.Firing`: retorna uma lista de alertas disparados.
+ `Alerts.Resolved`: retorna uma lista de alertas resolvidos.

**Alerta (tipo)**

O tipo de alerta contém os dados a seguir.


| Nome | Tipo | Observações | 
| --- | --- | --- | 
|  Status  |  string  |  `firing` ou `resolved`.  | 
|  Rótulos  |  KeyValue  |  Um conjunto de rótulos anexados ao alerta.  | 
|  Anotações  |  KeyValue  |  Um conjunto de anotações anexadas ao alerta.  | 
|  StartsAt  |  time.Time  |  Hora em que o alerta começou a disparar.  | 
|  EndsAt  |  time.Time  |  Definido somente se a hora de término de um alerta for conhecida. Caso contrário, defina um período de tempo limite configurável a partir do momento em que o último alerta foi recebido.  | 
|  GeneratorURL  |  string  |  Um link de retorno para o Grafana ou para o Alertmanager externo.  | 
|  SilenceURL  |  string  |  Link para a funcionalidade de silêncio por do Grafana com rótulos para esse alerta pré-preenchidos. Somente para alertas gerenciados pelo Grafana.  | 
|  DashboardURL  |  string  |  Link para o dashboard do Grafana, se a regra de alerta pertencer a um. Somente para alertas gerenciados pelo Grafana.  | 
|  PanelURL  |  string  |  Link para o painel do dashboard do Grafana, se a regra de alerta pertencer a um. Somente para alertas gerenciados pelo Grafana.  | 
|  Impressão digital  |  string  |  Impressão digital que pode ser usada para identificar o alerta.  | 
|  ValueString  |  string  |  Uma string que contém os rótulos e o valor de cada expressão reduzida no alerta.  | 

**KeyValue tipo**

O `KeyValue` tipo é um conjunto de pares de key/value strings que representam rótulos e anotações.

Além do acesso direto aos dados armazenados como um `KeyValue`, também existem métodos para classificar, remover e transformar os dados.


| Nome | Argumentos | Retornos | Observações | 
| --- | --- | --- | --- | 
|  SortedPairs  |    |  Lista ordenada de pares de strings de chave e valor  |    | 
|  Remover  |  []string  |  KeyValue  |  Retorna uma cópia do Key/Value mapa sem as chaves fornecidas.  | 
|  Nomes  |    |  []string  |  Lista de nomes de rótulos  | 
|  Valores  |    |  []string  |  Lista de valores de rótulos  | 



## Funções de modelo
<a name="alert-template-functions"></a>

Ao usar funções de modelo, você pode processar rótulos e anotações para gerar notificações dinâmicas. As funções a seguir estão disponíveis.


| Nome | Tipo de argumento | Tipo de retorno | Description | 
| --- | --- | --- | --- | 
|  `humanize`  |  número ou string  |  string  |  Converte um número em um formato mais legível, usando prefixos de métricas.  | 
|  `humanize1024`  |  número ou string  |  string  |  Como o humanize, mas usa 1024 como base em vez de 1000.  | 
|  `humanizeDuration`  |  número ou string  |  string  |  Converte uma duração em segundos em um formato mais legível.  | 
|  `humanizePercentage`  |  número ou string  |  string  |  Converte um valor de proporção em uma fração de 100.  | 
|  `humanizeTimestamp`  |  número ou string  |  string  |  Converte um carimbo de data e hora do Unix em segundos em um formato mais legível.  | 
|  `title`  |  string  |  string  |  strings.Title, coloca em maiúscula o primeiro caractere de cada palavra.  | 
|  `toUpper`  |  string  |  string  |  cordas. ToUpper, converte todos os caracteres em maiúsculas.  | 
|  `toLower`  |  string  |  string  |  cordas. ToLower, converte todos os caracteres em minúsculas.  | 
|  `match`  |  padrão, texto  |  booleano  |  regexp. MatchString Testes para uma correspondência de expressão regular não ancorada.  | 
|  `reReplaceAll`  |  padrão, substituição, texto  |  string  |  Regexp. ReplaceAllString Substituição Regexp, não ancorada.  | 
|  `graphLink`  |  string: objeto JSON com os campos `expr` e `datasource`  |  string  |  Retorna o caminho para a visualização gráfica no Explore para a expressão e a fonte de dados fornecidas.  | 
|  `tableLink`  |  string: objeto JSON com os campos `expr` e `datasource`  |  string  |  Retorna o caminho para a visualização tabular no Explore para a expressão e a fonte de dados fornecidas.  | 
|  `args`  |  []interface\$1\$1  |  map[string]interface\$1\$1  |  Converte uma lista de objetos em um mapa com chaves, por exemplo, arg0, arg1. Use essa função para passar vários argumentos para modelos.  | 
|  `externalURL`  |  nothing  |  string  |  Retorna uma string representando o URL externo.  | 
|  `pathPrefix`  |  nothing  |  string  |  Retorna o caminho do URL externo.  | 

A tabela a seguir mostra exemplos do uso de cada função.


| Função | TemplateString | Input | Esperados | 
| --- | --- | --- | --- | 
|  humanize  |  \$1 humanize \$1value \$1  |  1234567,0  |  1,235M  | 
|  humanize1024  |  \$1 humanize1024 \$1value \$1  |  1048576,0  |  1Mi  | 
|  humanizeDuration  |  \$1 humanizeDuration \$1value \$1  |  899,99  |  14m 59s  | 
|  humanizePercentage  |  \$1 humanizePercentage \$1value \$1  |  0,1234567  |  12,35%  | 
|  humanizeTimestamp  |  \$1 humanizeTimestamp \$1value \$1  |  1435065584.128  |  2015-06-23 13:19:44.128 \$10000 UTC  | 
|  título  |  \$1 \$1value \$1 title \$1  |  aa bB CC  |  Aa Bb Cc  | 
|  toUpper  |  \$1 \$1value \$1 toUpper \$1  |  aa bB CC  |  AA BB CC  | 
|  toLower  |  \$1 \$1value \$1 toLower \$1  |  aa bB CC  |  aa bb cc  | 
|  match  |  \$1 match "a\$1" \$1labels.instance \$1  |  aa  |  true  | 
|  reReplaceAll  |  \$1\$1 reReplaceAll “localhost :( .\$1)” “meu.domínio: \$11" \$1labels.instance\$1\$1  |  localhost:3000  |  my.domain:3000  | 
|  graphLink  |  \$1\$1 graphLink "\$1\$1"expr\$1": \$1"up\$1", \$1"datasource\$1": \$1"gdev-prometheus\$1"\$1" \$1\$1  |    |  /explore?left=["now-1h","now","gdev-prometheus",\$1"datasource":"gdev-prometheus","expr":"up","instant":false,"range":true\$1]  | 
|  tableLink  |  \$1\$1 tableLink "\$1\$1"expr\$1":\$1"up\$1", \$1"datasource\$1":\$1"gdev-prometheus\$1"\$1" \$1\$1  |    |  /explore?left=["now-1h","now","gdev-prometheus",\$1"datasource":"gdev-prometheus","expr":"up","instant":true,"range":false\$1]  | 
|  args  |  \$1\$1define "x"\$1\$1\$1\$1.arg0\$1\$1 \$1\$1.arg1\$1\$1\$1\$1end\$1\$1\$1\$1template "x" (args 1 "2")\$1\$1  |    |  1 2  | 
|  externalURL  |  \$1 externalURL \$1  |    |  http://localhost/path/prefix  | 
|  pathPrefix  |  \$1 pathPrefix \$1  |    |  /path/prefix  | 

# Trabalhar com políticas de notificação
<a name="alert-notifications"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 8.x**.  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 10.x, consulte [Trabalhar no Grafana versão 10](using-grafana-v10.md).  
Para espaços de trabalho do Grafana compatíveis com o Grafana versão 9.x, consulte [Trabalhar no Grafana versão 9](using-grafana-v9.md).

As políticas de notificação determinam como os alertas são roteados para os pontos de contato. As políticas têm uma estrutura em árvore, em que cada política pode ter uma ou mais políticas secundárias. Cada política, exceto a política raiz, também pode corresponder a rótulos de alerta específicos. Cada alerta é avaliado pela política raiz e depois por cada política secundária. Se você habilitar a opção `Continue matching subsequent sibling nodes` para uma política específica, a avaliação continuará mesmo após uma ou mais correspondências. As configurações de uma política principal e as informações do ponto de contato controlam o comportamento de um alerta que não corresponde a nenhuma das políticas secundárias. Uma política raiz controla qualquer alerta que não corresponda a uma política específica.

**nota**  
Você pode criar e editar políticas de notificação para alertas gerenciados pelo Grafana. As políticas de notificação para alertas do Alertmanager são somente leitura.

**Notificações de agrupamento**

O agrupamento categoriza as notificações de alerta de natureza semelhante em um único funil. Isso permite que você controle as notificações de alerta durante interrupções maiores, quando muitas partes de um sistema falham ao mesmo tempo, fazendo com que um grande número de alertas seja iniciado simultaneamente.

**Exemplo de agrupamento**

Suponha que você tenha cem serviços conectados a um banco de dados em diferentes ambientes. Esses serviços são diferenciados pelo rótulo `env=environmentname`. Existe uma regra de alerta para monitorar se os serviços podem acessar o banco de dados. A regra de alerta cria alertas denominados `alertname=DatabaseUnreachable`.

Se ocorrer uma partição de rede, em que metade dos serviços não consiga mais acessar o banco de dados, 50 alertas diferentes serão iniciados. Para essa situação, você deseja receber uma notificação de uma única página (em vez de 50) com uma lista dos ambientes afetados.

Você pode configurar o agrupamento para ser `group_by: [alertname]` (sem usar o rótulo `env`, que é diferente para cada serviço). Com essa configuração em vigor, o Grafana envia uma única notificação compacta que contém todos os ambientes afetados por essa regra de alerta.

**Grupos especiais**

O Grafana tem dois grupos especiais. O grupo padrão, `group_by: null` agrupa *todos* os alertas em um único grupo. Você também pode usar um rótulo especial denominado `...` para agrupar alertas por todos os rótulos, desabilitando efetivamente o agrupamento e enviando cada alerta para seu próprio grupo.

## Trabalhar com notificações
<a name="alert-notifications-working"></a>

Os procedimentos a seguir mostram como criar e gerenciar políticas de notificação.

**Para editar a política de notificação raiz**

1. No console do Grafana, no menu do Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas**.

1. Escolha **Políticas de notificação**.

1. No menu suspenso do **Alertmanager**, selecione o Alertmanager que deseja editar.

1. Na seção **Política raiz**, escolha o ícone de **Editar** (caneta).

1. Em **Ponto de contato padrão**, atualize o ponto de contato para o qual as notificações devem ser enviadas para as regras quando as regras de alerta não corresponderem a nenhuma política específica.

1. Em **Agrupar por**, escolha os rótulos (ou grupos especiais) pelos quais agrupar os alertas.

1. Em **Opções de tempo**, selecione uma das opções a seguir.
   + **Espera em grupo**: tempo de espera para armazenar em buffer alertas do mesmo grupo antes de enviar uma notificação inicial. O padrão é 30 segundos.
   + **Intervalo de grupo**: intervalo mínimo de tempo entre duas notificações para um grupo. O padrão é 5 minutos.
   + **Intervalo de repetição**: intervalo mínimo de tempo antes de reenviar uma notificação, caso nenhum novo alerta tenha sido adicionado ao grupo. O padrão é quatro horas.

1. Escolha **Salvar** para salvar as alterações.

**Para adicionar uma nova política específica de alto nível**

1. No console do Grafana, no menu do Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas**.

1. Escolha **Políticas de notificação**.

1. No menu suspenso do **Alertmanager**, selecione o Alertmanager que deseja editar.

1. Na seção **Roteamento específico**, escolha **Nova política específica**.

1. Na seção **Rótulos correspondentes**, adicione um ou mais rótulos de alerta correspondentes. Veja outras informações sobre correspondência de rótulos mais adiante neste tópico.

1. Em **Ponto de contato**, adicione o ponto de contato para o qual enviar notificações se o alerta corresponder a essa política específica. As políticas aninhadas substituem esse ponto de contato.

1. Opcionalmente, selecione **Substituir agrupamento** para especificar um agrupamento diferente da política raiz.

1. Opcionalmente, selecione **Substituir tempos gerais** para substituir as opções de tempo na política de notificação de grupo.

1. Para salvar suas alterações, selecione **Salvar política**.

**Para adicionar uma política aninhada**

1. Expanda a política específica na qual você deseja criar uma política aninhada.

1. Escolha **Adicionar política aninhada** e, em seguida, adicione os detalhes (como ao adicionar uma política específica de nível superior).

1. Para salvar suas alterações, selecione **Salvar política**.

**Para editar uma política específica**

1. Na página **Alertas**, escolha **Políticas de notificação** para abrir a página que lista as políticas existentes.

1. Selecione a política que deseja editar e depois escolha o ícone de **Editar** (caneta).

1. Faça qualquer alteração (como ao adicionar uma política específica de nível superior).

1. Escolha **Salvar política**.

**Como funciona a correspondência de rótulos**

Uma política corresponderá a um alerta se os rótulos do alerta corresponderem a todos os *rótulos correspondentes* especificados na política.
+ **Rótulo**: o nome do rótulo correspondente. Ele deve corresponder exatamente ao nome do rótulo do alerta.
+ **Operador**: o operador usado para comparar o valor do rótulo com o valor do rótulo correspondente. Os operadores disponíveis são:
  + `=` Selecione rótulos cujo valor corresponda exatamente à string fornecida.
  + `!=` Selecione rótulos cujo valor não corresponda à string fornecida.
  + `=~` Selecione rótulos cujo valor corresponda ao valor interpretado pelo regex da string fornecida (a string fornecida é interpretada como uma expressão regular).
  + `!=` Selecione rótulos que não correspondam à expressão regular fornecida.
+ **Valor**: o valor ao qual corresponder ao valor do rótulo. Pode corresponder como uma string ou como uma expressão regular, dependendo do operador escolhido.

## Tempos de desativação de áudio
<a name="alert-notification-muting"></a>

O tempo de desativação de áudio é um intervalo de tempo recorrente em que nenhuma nova notificação de uma política é gerada ou enviada. Use-o para evitar que os alertas sejam disparados por um período específico e recorrente, por exemplo, um período de manutenção regular.

Assim como os silêncios, os tempos de desativação de áudio não impedem que as regras de alerta sejam avaliadas nem impedem que as instâncias de alerta sejam mostradas na interface do usuário. Eles apenas impedem que as notificações sejam criadas.

Você pode configurar os tempos de desativação de áudio gerenciados do Grafana bem como os horários de desativação de áudio para uma fonte de dados externa do Alertmanager.

**Tempos de desativação de áudio em comparação com silêncios**

A tabela a seguir destaca as diferenças entre tempos de silêncio e de desativação de áudio.


| Tempo de desativação de áudio | Silêncio | 
| --- | --- | 
|  Usa definições de intervalo de tempo que podem ocorrer novamente  |  Tem um horário de início e término fixo  | 
|  É criado e, em seguida, adicionado às políticas de notificação  |  Usa rótulos para fazer correspondência com um alerta para determinar se deve ser silenciado ou não  | 

**Para criar um tempo de desativação de áudio**

1. No console do Grafana, no menu do Grafana, escolha o ícone de **Alertas** (sino) para abrir a página **Alertas**.

1. Escolha **Políticas de notificação**.

1. No menu suspenso do **Alertmanager**, selecione o Alertmanager que deseja editar.

1. Na seção **Tempos de desativação de áudio**, escolha o botão **Adicionar tempo de desativação de áudio**.

1. Escolha o intervalo de tempo para o qual você deseja aplicar o tempo de desativação de áudio.

1. Escolha **Enviar** para criar um tempo de desativação de áudio.

**Para adicionar um tempo de desativação de áudio a uma política de notificação**

1. Selecione a política de notificação à qual você gostaria de adicionar o tempo de desativação de áudio e escolha o botão **Editar**.

1. No menu suspenso **Tempos de desativação de áudio**, selecione os tempos de desativação de áudio que você gostaria de adicionar à política.

   Escolha o botão **Salvar política**.

**Intervalos de tempo**

Um intervalo de tempo é uma definição para um período de tempo. Se um alerta for iniciado durante esse intervalo, ele será suprimido. Os períodos são compatíveis usando `:` (por exemplo, `monday:thursday`). Um tempo de desativação de áudio pode conter vários intervalos de tempo. Um intervalo de tempo consiste em vários campos (detalhes na lista a seguir), todos os quais devem coincidir para suprimir os alertas. Por exemplo, se você especificar os dias da semana `monday:friday` e o intervalo de tempo das 8h às 9h, os alertas serão suprimidos das 8h às 9h, de segunda a sexta-feira, mas não, por exemplo, das 8h às 9h no sábado.
+ **Intervalo de tempo**: a hora do dia para suprimir as notificações. Consiste em dois subcampos, **Hora de início** e **Hora de término**. Um tempo de exemplo é `14:30`. A hora está em notação de 24 horas, em UTC.
+ **Dias da semana**: os dias da semana. Pode ser um único dia, como `monday`, um período, como `monday:friday`, ou uma lista de dias separada por vírgula, como `monday, tuesday, wednesday`.
+ **Meses**: os meses a serem selecionados. Você pode especificar os meses com designações numéricas ou com o nome completo do mês, por exemplo, `1` ou `january`, ambos especificam janeiro. Você pode especificar um único mês, um intervalo de meses ou uma lista de meses separada por vírgula.
+ **Dias do mês**: as datas em um mês. Os valores de podem variar de `1` a `31`. Valores negativos especificam os dias do mês na ordem inversa, então `-1` representa o último dia do mês. Os dias do mês podem ser especificados como um único dia, um intervalo de dias ou uma lista de dias separada por vírgula.