

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Crea modelli di notifica
<a name="v9-alerting-create-templates"></a>

****  
**Questo argomento della documentazione è progettato per le aree di lavoro Grafana che supportano la versione 9.x di Grafana.**  
Per le aree di lavoro Grafana che supportano la versione 10.x di Grafana, vedere. [Funzionamento nella versione 10 di Grafana](using-grafana-v10.md)  
Per le aree di lavoro Grafana che supportano la versione 8.x di Grafana, vedere. [Funzionamento in Grafana versione 8](using-grafana-v8.md)

Crea modelli di notifica riutilizzabili da inviare ai tuoi punti di contatto.

Puoi aggiungere uno o più modelli al tuo modello di notifica.

Il nome del modello di notifica deve essere univoco. Non è possibile avere due modelli con lo stesso nome nello stesso modello di notifica o in modelli di notifica diversi. Evita di definire modelli con lo stesso nome dei modelli predefiniti, ad esempio: `__subject``__text_values_list`,`__text_alert_list`, `default.title` e`default.message`.

Nella scheda Punti di contatto, puoi visualizzare un elenco dei tuoi modelli di notifica.

## Creazione di modelli di notifica
<a name="v9-alerting-creating-templates"></a>

**Per creare un modello di notifica**

1. Fai clic su **Aggiungi modello**.

1. Scegli un nome per il modello di notifica, ad esempio`email.subject`.

1. Scrivi il contenuto del modello nel campo del contenuto.

   Esempio:

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

1. Fai clic su Salva.

   `{{ define "email.subject" }}`(`email.subject`dov'è il nome del modello) e `{{ end }}` viene aggiunto automaticamente all'inizio e alla fine del contenuto.

**Per creare un modello di notifica che contenga più di un modello:**

1. Fai clic su **Aggiungi modello**.

1. Inserisci un nome per il modello di notifica generale. Ad esempio, `email`.

1. Scrivi ogni modello nel campo Contenuto, incluso `{{ define "name-of-template" }}` e `{{ end }}` all'inizio e alla fine di ogni modello. È possibile utilizzare nomi descrittivi per ciascuno dei modelli nel modello di notifica, ad esempio, `email.subject` o`email.message`. In questo caso, non riutilizzare il nome del modello di notifica inserito in precedenza.

   Le sezioni seguenti mostrano esempi dettagliati di modelli che potresti creare.

1. Fai clic su Salva.

## Creazione di un modello per l'oggetto di un'e-mail
<a name="v9-alerting-create-template-subject"></a>

Crea un modello per l'oggetto di un'e-mail che contenga il numero di avvisi di attivazione e risolti, come in questo esempio:

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

**Per creare un modello per l'oggetto di un'e-mail**

1. Crea un modello chiamato `email.subject` con il seguente contenuto:

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

1. Usa il modello quando crei l'integrazione del punto di contatto inserendolo nel campo **Oggetto** con la `template` parola chiave.

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

## Creazione di un modello per il messaggio di un'e-mail
<a name="v9-alerting-create-template-message"></a>

Crea un modello per il messaggio di un'e-mail che contenga un riepilogo di tutti gli avvisi di attivazione e risolti, come in questo esempio:

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

**Per creare un modello per il messaggio di un'e-mail**

1. Crea un modello di notifica chiamato `email` con due modelli nel contenuto: `email.message_alert` e`email.message`.

   Il `email.message_alert` modello viene utilizzato per stampare le etichette e i valori per ogni avviso di attivazione e risolto, mentre il `email.message` modello contiene la struttura dell'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. Utilizza il modello per creare l'integrazione del punto di contatto inserendolo nel campo **Text Body** con la `template` parola chiave.

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

## Creazione di un modello per il titolo di un messaggio Slack
<a name="v9-alerting-create-template-slack-title"></a>

Crea un modello per il titolo di un messaggio Slack che contenga il numero di avvisi attivati e risolti, come nell'esempio seguente:

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

**Per creare un modello per il titolo di un messaggio Slack**

1. Crea un modello chiamato `slack.title` con il seguente contenuto:

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

1. Usa il modello quando crei l'integrazione del tuo punto di contatto inserendolo nel campo **Titolo** con la `template` parola chiave.

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

## Creazione di un modello per il contenuto di un messaggio Slack
<a name="v9-alerting-create-template-slack-message"></a>

Crea un modello per il contenuto di un messaggio Slack che contenga una descrizione di tutti gli avvisi attivati e risolti, comprese le etichette, le annotazioni e l'URL della dashboard:

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

**Per creare un modello per il contenuto di un messaggio Slack**

1. Crea un modello chiamato `slack` con due modelli nel contenuto: `slack.print_alert` e`slack.message`.

   Il `slack.print_alert` modello viene utilizzato per stampare le etichette, le annotazioni e DashboardURL mentre il `slack.message` modello contiene la struttura della notifica.

   ```
   {{ 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. Usa il modello quando crei l'integrazione del punto di contatto inserendolo nel campo **Text Body con la parola chiave**. `template`

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

## Crea modelli sia per email che per Slack con modelli condivisi
<a name="v9-alerting-create-shared-templates"></a>

Invece di creare modelli di notifica separati per ogni punto di contatto, come email e Slack, puoi condividere lo stesso modello.

Ad esempio, se desideri inviare un'email con questo oggetto e un messaggio Slack con questo titolo`1 firing alerts, 0 resolved alerts`, puoi creare un modello condiviso.

**Per creare un modello condiviso**

1. Crea un modello chiamato `common.subject_title` con il seguente contenuto:

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

1. Per le e-mail, esegui il modello dal campo dell'oggetto nell'integrazione del punto di contatto e-mail:

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

1. Per Slack, esegui il modello dal campo del titolo nell'integrazione con i punti di contatto Slack:

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

## Utilizzo dei modelli di notifica
<a name="v9-alerting-use-notification-templates"></a>

Utilizza i modelli nei punti di contatto per personalizzare le notifiche.

**Per utilizzare un modello durante la creazione di un punto di contatto**

1. Dal menu **Avvisi**, scegli **Punti di contatto** per visualizzare un elenco di punti di contatto esistenti.

1. Scegli **Aggiungi punto di contatto**. In alternativa, puoi modificare un punto di contatto esistente scegliendo l'icona **Modifica** (penna) accanto al punto di contatto che desideri modificare.

1. Inserisci i modelli che desideri utilizzare in uno o più campi, come **Messaggio** o **Oggetto**. Per inserire un modello, usa il modulo`{{ template "template_name" . }}`, sostituendolo *template\$1name* con il nome del modello che desideri utilizzare.

1. Fai clic su **Salva punto di contatto**.