

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á.

# Criar modelos de notificações
<a name="v10-alerting-create-templates"></a>

****  
Este tópico de documentação foi desenvolvido para espaços de trabalho do Grafana compatíveis com o **Grafana versão 10.x**.  
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 espaços de trabalho do Grafana compatíveis com o Grafana versão 8.x, consulte [Trabalhar no Grafana versão 8](using-grafana-v8.md).

Crie modelos de notificação reutilizáveis para enviar aos pontos de contato.

Você pode adicionar um ou mais modelos ao modelo de notificação.

O nome do modelo de notificação deve ser exclusivo. Você não pode ter dois modelos com o mesmo nome no mesmo modelo de notificação ou em modelos de notificação diferentes. Evite definir modelos com o mesmo nome dos modelos padrão, como: `__subject`, `__text_values_list`, `__text_alert_list`, `default.title` e `default.message`.

Na guia Pontos de contato, você pode ver uma lista dos modelos de notificação.

## Criar modelos de notificação
<a name="v10-alerting-creating-templates"></a>

**Para criar um modelo de notificação**

1. Escolha **Alertas**, **Pontos de contato**.

1. Escolha a guia **Modelos de notificação** e, em seguida, **\$1 Adicionar modelo de notificação**.

1. Escolha um nome para o modelo de notificação, como `email.subject`.

1. Escreva o conteúdo do modelo no campo de conteúdo.

   Por exemplo:

   ```
   {{ if .Alerts.Firing -}}
      {{ len .Alerts.Firing }} firing alerts
      {{ end }}
      {{ if .Alerts.Resolved -}}
      {{ len .Alerts.Resolved }} resolved alerts
      {{ end }}
   ```

1. Salve as alterações.

   `{{ define "email.subject" }}` (em que `email.subject` é o nome do seu modelo) e `{{ end }}` é automaticamente adicionado ao início e ao final do conteúdo.

**Para criar um modelo de notificação que contenha mais de um modelo**

1. Escolha **Alertas**, **Pontos de contato**.

1. Escolha a guia **Modelos de notificação** e, em seguida, **\$1 Adicionar modelo de notificação**.

1. Insira um nome para o modelo geral de notificação. Por exemplo, .`email`

1. Escreva cada modelo no campo Conteúdo, incluindo `{{ define "name-of-template" }}` e `{{ end }}` no início e no final de cada modelo. Você pode usar nomes descritivos para cada um dos modelos no modelo de notificação, por exemplo, `email.subject` ou `email.message`. Nesse caso, não reutilize o nome do modelo de notificação inserido acima.

   As seções posteriores mostram exemplos detalhados de modelos que você pode criar.

1. Clique em Salvar.

## Pré-visualização dos modelos de notificações
<a name="v10-alerting-preview-templates"></a>

Pré-visualize seus modelos de notificação antes de usá-los nos pontos de contato, ajudando você a entender o resultado do modelo que está criando e dando a chance de corrigir quaisquer erros antes de salvá-lo.

**nota**  
As pré-visualizações de notificações estão disponíveis apenas para o Grafana Alertmanager.

**Para pré-visualizar os modelos de notificação**

1. Escolha **Alertas**, **Pontos de contato**.

1. Escolha a guia **Modelos de notificação** e, em seguida, **\$1 Adicionar modelo de notificação**, ou edite um modelo existente.

1. Adicione ou atualize o conteúdo do modelo.

   Os dados padrão são fornecidos e você pode adicionar ou editar dados de alerta a eles, bem como às instâncias de alerta. Você pode adicionar dados de alerta diretamente na própria janela de dados da carga útil ou clicar em **Selecionar instâncias de alerta** ou **Adicionar alertas personalizados**.

1. [Opcional] Para adicionar dados de alerta de instâncias de alerta existentes:

   1. Escolha **Selecionar instâncias de alerta**.

   1. Passe o mouse sobre as instâncias de alerta para ver mais informações sobre cada instância de alerta.

   1. Escolha **Confirmar** para adicionar a instância de alerta à carga útil.

1. [Opcional] Para adicionar dados de alerta usando o editor de dados de alertas, escolha **Adicionar dados personalizados**:

   1. Adicione anotações, rótulos personalizados ou defina um dashboard ou painel.

   1. Alterne entre Disparado ou Resolvido, dependendo se você deseja adicionar alertas disparados ou resolvidos à sua notificação.

   1. Escolha **Adicionar dados de alertas**.

   1. Escolha **Atualizar pré-visualização** para ver como ficará o conteúdo do seu modelo e os dados de carga útil correspondentes.

   Se houver algum erro em seu modelo, ele será exibido na pré-visualização e você poderá corrigi-lo antes de salvá-lo.

1. Salve as alterações.

## Criar um modelo para o assunto da mensagem
<a name="v10-alerting-create-template-subject"></a>

Crie um modelo para o assunto de um e-mail que contenha o número de alertas disparados e resolvidos, como neste exemplo:

```
1 firing alerts, 0 resolved alerts
```

**Para criar um modelo para o assunto de um e-mail**

1. Crie um arquivo denominado `email.subject` com o seguinte conteúdo:

   ```
   {{ define "email.subject" }}
   {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts
   {{ end }}
   ```

1. Use o modelo ao criar sua integração de ponto de contato, colocando-a no campo **Assunto** com a palavra-chave `template`.

   ```
   {{ template "email.subject" . }}
   ```

## Criar um modelo para a mensagem de um e-mail
<a name="v10-alerting-create-template-message"></a>

Crie um modelo para a mensagem de um e-mail que contenha um resumo de todos os alertas disparados e resolvidos, como neste exemplo:

```
There are 2 firing alerts, and 1 resolved alerts

Firing alerts:

- alertname=Test 1 grafana_folder=GrafanaCloud has value(s) B=1
- alertname=Test 2 grafana_folder=GrafanaCloud has value(s) B=2

Resolved alerts:

- alertname=Test 3 grafana_folder=GrafanaCloud has value(s) B=0
```

**Para criar um modelo para a mensagem de um e-mail**

1. Crie um modelo de notificação denominado `email` com dois modelos no conteúdo: `email.message_alert` e `email.message`.

   O modelo `email.message_alert` é usado para imprimir os rótulos e os valores de cada alerta disparado e resolvido, enquanto o modelo `email.message` contém a estrutura do e-mail.

   ```
   {{- define "email.message_alert" -}}
   {{- range .Labels.SortedPairs }}{{ .Name }}={{ .Value }} {{ end }} has value(s)
   {{- range $k, $v := .Values }} {{ $k }}={{ $v }}{{ end }}
   {{- end -}}
   
   {{ define "email.message" }}
   There are {{ len .Alerts.Firing }} firing alerts, and {{ len .Alerts.Resolved }} resolved alerts
   
   {{ if .Alerts.Firing -}}
   Firing alerts:
   {{- range .Alerts.Firing }}
   - {{ template "email.message_alert" . }}
   {{- end }}
   {{- end }}
   
   {{ if .Alerts.Resolved -}}
   Resolved alerts:
   {{- range .Alerts.Resolved }}
   - {{ template "email.message_alert" . }}
   {{- end }}
   {{- end }}
   
   {{ end }}
   ```

1. Use o modelo ao criar a integração de ponto de contato, colocando-a no campo **Corpo do texto** com a palavra-chave `template`.

   ```
   {{ template "email.message" . }}
   ```

## Criar um modelo para o título de uma mensagem do Slack
<a name="v10-alerting-create-template-slack-title"></a>

Crie um modelo para o título de uma mensagem do Slack que contenha o número de alertas disparados e resolvidos, como no seguinte exemplo:

```
1 firing alerts, 0 resolved alerts
```

**Para criar um modelo para o título de uma mensagem do Slack**

1. Crie um arquivo denominado `slack.title` com o seguinte conteúdo:

   ```
   {{ define "slack.title" }}
   {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts
   {{ end }}
   ```

1. Execute o modelo no campo de título na integração do ponto de contato.

   ```
   {{ template "slack.title" . }}
   ```

## Criar um modelo para o conteúdo de uma mensagem do Slack
<a name="v10-alerting-create-template-slack-message"></a>

Crie um modelo para o conteúdo de uma mensagem do Slack que contenha uma descrição de todos os alertas disparados e resolvidos, incluindo seus rótulos, anotações e URL do dashboard.

**nota**  
Este modelo é apenas para alertas gerenciados pelo Grafana. Para usar o modelo para alertas gerenciados pela fonte de dados, exclua as referências a DashboardURL e SilenceURL. Para obter mais informações sobre como configurar as notificações do Prometheus, consulte a [documentação do Prometheus sobre notificações](https://prometheus.io/docs/alerting/latest/notifications/).

```
1 firing alerts:

[firing] Test1
Labels:
- alertname: Test1
- grafana_folder: GrafanaCloud
Annotations:
- description: This is a test alert
Go to dashboard: https://example.com/d/dlhdLqF4z?orgId=1

1 resolved alerts:

[firing] Test2
Labels:
- alertname: Test2
- grafana_folder: GrafanaCloud
Annotations:
- description: This is another test alert
Go to dashboard: https://example.com/d/dlhdLqF4z?orgId=1
```

**Para criar um modelo para o conteúdo de uma mensagem do Slack**

1. Crie um modelo denominado `slack` com dois modelos no conteúdo: `slack.print_alert` e `slack.message`.

   O modelo `slack.print_alert` é usado para imprimir os rótulos, as anotações e o DashboardURL, enquanto o modelo `slack.message` contém a estrutura da notificação.

   ```
   {{ define "slack.print_alert" -}}
   [{{.Status}}] {{ .Labels.alertname }}
   Labels:
   {{ range .Labels.SortedPairs -}}
   - {{ .Name }}: {{ .Value }}
   {{ end -}}
   {{ if .Annotations -}}
   Annotations:
   {{ range .Annotations.SortedPairs -}}
   - {{ .Name }}: {{ .Value }}
   {{ end -}}
   {{ end -}}
   {{ if .DashboardURL -}}
     Go to dashboard: {{ .DashboardURL }}
   {{- end }}
   {{- end }}
   
   {{ define "slack.message" -}}
   {{ if .Alerts.Firing -}}
   {{ len .Alerts.Firing }} firing alerts:
   {{ range .Alerts.Firing }}
   {{ template "slack.print_alert" . }}
   {{ end -}}
   {{ end }}
   {{ if .Alerts.Resolved -}}
   {{ len .Alerts.Resolved }} resolved alerts:
   {{ range .Alerts.Resolved }}
   {{ template "slack.print_alert" .}}
   {{ end -}}
   {{ end }}
   {{- end }}
   ```

1. Execute o modelo no campo do corpo do texto na integração do ponto de contato:

   ```
   {{ template "slack.message" . }}
   ```

## Criar modelos para o e-mail e Slack com modelos compartilhados
<a name="v10-alerting-create-shared-templates"></a>

Em vez de criar modelos de notificação separados para cada ponto de contato, como e-mail e Slack, você pode compartilhar o mesmo modelo.

Por exemplo, se você quiser enviar um e-mail com esse assunto e uma mensagem do Slack com este título `1 firing alerts, 0 resolved alerts`, você pode criar um modelo compartilhado.

**Para criar um modelo compartilhado**

1. Crie um arquivo denominado `common.subject_title` com o seguinte conteúdo:

   ```
   {{ define "common.subject_title" }}
   {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts
   {{ end }}
   ```

1. Para e-mail, execute o modelo no campo de assunto na integração do ponto de contato de e-mail:

   ```
   {{ template "common.subject_title" . }}
   ```

1. Para o Slack, execute o modelo no campo de título na integração do ponto de contato do Slack:

   ```
   {{ template "common.subject_title" . }}
   ```