

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="v10-alerting-create-templates"></a>

****  
**Questo argomento della documentazione è progettato per le aree di lavoro Grafana che supportano la versione 10.x di Grafana.**  
Per le aree di lavoro Grafana che supportano la versione 9.x di Grafana, vedere. [Lavorare nella versione 9 di Grafana](using-grafana-v9.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="v10-alerting-creating-templates"></a>

**Per creare un modello di notifica**

1. Scegli **Avvisi**, **Punti di contatto**.

1. Scegli la scheda **Modelli di notifica**, quindi **\$1 Aggiungi modello di notifica**.

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. Salvare le modifiche.

   `{{ 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. Scegli **Avvisi**, **Punti di contatto**.

1. Scegli la scheda **Modelli di notifica**, quindi **\$1 Aggiungi modello di notifica**.

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 successive mostrano esempi dettagliati di modelli che potresti creare.

1. Fai clic su Salva.

## Visualizza in anteprima i modelli di notifica
<a name="v10-alerting-preview-templates"></a>

Visualizza in anteprima l'aspetto dei modelli di notifica prima di utilizzarli nei punti di contatto, aiutandoti a comprendere il risultato del modello che stai creando e dandoti la possibilità di correggere eventuali errori prima di salvare il modello.

**Nota**  
Le anteprime delle notifiche sono disponibili solo per Grafana Alertmanager.

**Per visualizzare in anteprima i modelli di notifica**

1. Scegli **Avvisi**, **Punti di contatto**.

1. Scegli la scheda **Modelli di notifica**, quindi **\$1 Aggiungi modello di notifica** o modifica un modello esistente.

1. Aggiungi o aggiorna il contenuto del modello.

   Vengono forniti dati predefiniti ed è possibile aggiungere o modificare i dati degli avvisi e le istanze di avviso. È possibile aggiungere i dati di avviso direttamente nella finestra dei dati Payload stessa oppure fare clic su **Seleziona istanze di avviso** o **Aggiungi** avvisi personalizzati.

1. [Facoltativo] Per aggiungere dati di avviso da istanze di avviso esistenti:

   1. Scegli **Seleziona istanze di avviso**.

   1. Passa il mouse sulle istanze di avviso per visualizzare ulteriori informazioni su ciascuna istanza di avviso/

   1. Scegli **Conferma** per aggiungere l'istanza di avviso al payload.

1. [Facoltativo] Per aggiungere dati di avviso utilizzando l'editor di dati di avviso, scegli **Aggiungi dati personalizzati**:

   1. Aggiungi annotazioni, etichette personalizzate o imposta una dashboard o un pannello.

   1. Attiva o Risolto, a seconda che tu voglia aggiungere avvisi di attivazione o risolti alla notifica.

   1. **Scegli Aggiungi dati di avviso.**

   1. Scegli **Aggiorna anteprima** per vedere come apparirà il contenuto del modello e i dati del payload corrispondenti.

   Se ci sono errori nel modello, questi vengono visualizzati nell'anteprima e puoi correggerli prima di salvarli.

1. Salvare le modifiche.

## Creazione di un modello per l'oggetto del messaggio
<a name="v10-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="v10-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="v10-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. Esegui il modello dal campo del titolo nell'integrazione del tuo punto di contatto.

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

## Creazione di un modello per il contenuto di un messaggio Slack
<a name="v10-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.

**Nota**  
Questo modello è solo per gli avvisi gestiti da Grafana. Per utilizzare il modello per gli avvisi gestiti dall'origine dati, elimina i riferimenti a dashboardURL e silenceURL. [Per ulteriori informazioni sulla configurazione delle notifiche di Prometheus, consulta la documentazione di Prometheus sulle notifiche.](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
```

**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. Esegui il modello dal campo del corpo del testo nell'integrazione del punto di contatto:

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

## Crea modelli sia per email che per Slack con modelli condivisi
<a name="v10-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" . }}
   ```