

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Création de modèles de notification
<a name="v9-alerting-create-templates"></a>

****  
**Cette rubrique de documentation est conçue pour les espaces de travail Grafana compatibles avec la version 9.x de Grafana.**  
Pour les espaces de travail Grafana compatibles avec la version 10.x de Grafana, voir. [Travailler dans la version 10 de Grafana](using-grafana-v10.md)  
Pour les espaces de travail Grafana compatibles avec la version 8.x de Grafana, voir. [Travailler dans la version 8 de Grafana](using-grafana-v8.md)

Créez des modèles de notification réutilisables à envoyer à vos points de contact.

Vous pouvez ajouter un ou plusieurs modèles à votre modèle de notification.

Le nom de votre modèle de notification doit être unique. Vous ne pouvez pas avoir deux modèles portant le même nom dans le même modèle de notification ou dans des modèles de notification différents. Évitez de définir des modèles portant le même nom que les modèles par défaut, tels que : `__subject``__text_values_list`,`__text_alert_list`, `default.title` et`default.message`.

Dans l'onglet Points de contact, vous pouvez voir la liste de vos modèles de notification.

## Création de modèles de notification
<a name="v9-alerting-creating-templates"></a>

**Pour créer un modèle de notification**

1. Cliquez sur **Ajouter un modèle**.

1. Choisissez un nom pour le modèle de notification, par exemple`email.subject`.

1. Écrivez le contenu du modèle dans le champ de contenu.

   Par exemple :

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

1. Cliquez sur Sauvegarder

   `{{ define "email.subject" }}`(où `email.subject` est le nom de votre modèle) et `{{ end }}` est automatiquement ajouté au début et à la fin du contenu.

**Pour créer un modèle de notification contenant plusieurs modèles :**

1. Cliquez sur **Ajouter un modèle**.

1. Entrez un nom pour le modèle de notification global. Par exemple, `email`.

1. Écrivez chaque modèle dans le champ Contenu, y compris `{{ define "name-of-template" }}` `{{ end }}` au début et à la fin de chaque modèle. Vous pouvez utiliser des noms descriptifs pour chacun des modèles du modèle de notification, par exemple, `email.subject` ou`email.message`. Dans ce cas, ne réutilisez pas le nom du modèle de notification que vous avez saisi ci-dessus.

   Les sections suivantes présentent des exemples détaillés de modèles que vous pouvez créer.

1. Cliquez sur Sauvegarder

## Création d'un modèle pour l'objet d'un e-mail
<a name="v9-alerting-create-template-subject"></a>

Créez un modèle pour l'objet d'un e-mail contenant le nombre d'alertes déclenchées et résolues, comme dans cet exemple :

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

**Pour créer un modèle pour l'objet d'un e-mail**

1. Créez un modèle appelé `email.subject` avec le contenu suivant :

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

1. Utilisez le modèle lors de la création de votre intégration de points de contact en le plaçant dans le champ **Objet** avec le `template` mot clé.

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

## Création d'un modèle pour le message d'un e-mail
<a name="v9-alerting-create-template-message"></a>

Créez un modèle pour le message d'un e-mail contenant un résumé de toutes les alertes déclenchées et résolues, comme dans cet exemple :

```
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
```

**Pour créer un modèle pour le message d'un e-mail**

1. Créez un modèle de notification appelé `email` avec deux modèles dans le contenu : `email.message_alert` et`email.message`.

   Le `email.message_alert` modèle est utilisé pour imprimer les étiquettes et les valeurs de chaque alerte déclenchée et résolue, tandis que le `email.message` modèle contient la structure de l'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. Utilisez le modèle lors de la création de votre intégration de points de contact en le plaçant dans le champ **du corps du texte** avec le `template` mot clé.

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

## Création d'un modèle pour le titre d'un message Slack
<a name="v9-alerting-create-template-slack-title"></a>

Créez un modèle pour le titre d'un message Slack contenant le nombre d'alertes déclenchées et résolues, comme dans l'exemple suivant :

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

**Pour créer un modèle pour le titre d'un message Slack**

1. Créez un modèle appelé `slack.title` avec le contenu suivant :

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

1. Utilisez le modèle lors de la création de votre intégration de points de contact en le plaçant dans le champ **Titre** avec le `template` mot clé.

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

## Création d'un modèle pour le contenu d'un message Slack
<a name="v9-alerting-create-template-slack-message"></a>

Créez un modèle pour le contenu d'un message Slack contenant une description de toutes les alertes déclenchées et résolues, y compris leurs étiquettes, leurs annotations et l'URL du tableau de bord :

```
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
```

**Pour créer un modèle pour le contenu d'un message Slack**

1. Créez un modèle appelé `slack` avec deux modèles dans le contenu : `slack.print_alert` et`slack.message`.

   Le `slack.print_alert` modèle est utilisé pour imprimer les étiquettes, les annotations et l'URL du tableau de bord tandis que le `slack.message` modèle contient la structure de la notification.

   ```
   {{ 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. Utilisez le modèle lors de la création de votre intégration de points de contact en le plaçant dans le champ **du corps du texte** avec le `template` mot clé.

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

## Modélisez à la fois vos e-mails et Slack avec des modèles partagés
<a name="v9-alerting-create-shared-templates"></a>

Au lieu de créer des modèles de notification distincts pour chaque point de contact, tels que les e-mails et Slack, vous pouvez partager le même modèle.

Par exemple, si vous souhaitez envoyer un e-mail avec cet objet et un message Slack avec ce titre`1 firing alerts, 0 resolved alerts`, vous pouvez créer un modèle partagé.

**Pour créer un modèle partagé**

1. Créez un modèle appelé `common.subject_title` avec le contenu suivant :

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

1. Pour les e-mails, exécutez le modèle à partir du champ d'objet de l'intégration de votre point de contact e-mail :

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

1. Pour Slack, exécutez le modèle à partir du champ de titre dans l'intégration de votre point de contact Slack :

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

## Utilisation de modèles de notification
<a name="v9-alerting-use-notification-templates"></a>

Utilisez des modèles dans les points de contact pour personnaliser vos notifications.

**Pour utiliser un modèle lors de la création d'un point de contact**

1. Dans le menu **Alertes**, choisissez **Points de contact** pour voir la liste des points de contact existants.

1. Choisissez **Ajouter un point de contact**. Vous pouvez également modifier un point de contact existant en choisissant l'icône **Modifier** (stylo) à côté du point de contact que vous souhaitez modifier.

1. Entrez les modèles que vous souhaitez utiliser dans un ou plusieurs champs, tels que **Message** ou **Objet**. Pour saisir un modèle, utilisez le formulaire `{{ template "template_name" . }}` en le *template\$1name* remplaçant par le nom du modèle que vous souhaitez utiliser.

1. Cliquez sur **Enregistrer le point de contact**.