Crea modelli di notifica - Grafana gestito da Amazon

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

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

Per le aree di lavoro Grafana che supportano la versione 8.x di Grafana, vedere. Funzionamento in Grafana versione 8

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 edefault.message.

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

Creazione di modelli di notifica

Per creare un modello di notifica
  1. Scegli Avvisi, Punti di contatto.

  2. Scegli la scheda Modelli di notifica, quindi + Aggiungi modello di notifica.

  3. Scegli un nome per il modello di notifica, ad esempioemail.subject.

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

    Per esempio:

    {{ if .Alerts.Firing -}} {{ len .Alerts.Firing }} firing alerts {{ end }} {{ if .Alerts.Resolved -}} {{ len .Alerts.Resolved }} resolved alerts {{ end }}
  5. Salvare le modifiche.

    {{ define "email.subject" }}(email.subjectdov'è 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.

  2. Scegli la scheda Modelli di notifica, quindi + Aggiungi modello di notifica.

  3. Inserisci un nome per il modello di notifica generale. Ad esempio email.

  4. 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 oemail.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.

  5. Fai clic su Save (Salva).

Visualizza in anteprima i modelli di notifica

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.

  2. Scegli la scheda Modelli di notifica, quindi + Aggiungi modello di notifica o modifica un modello esistente.

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

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

    1. Scegli Seleziona istanze di avviso.

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

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

  5. [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.

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

    3. Scegli Aggiungi dati di avviso.

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

  6. Salvare le modifiche.

Creazione di un modello per l'oggetto del messaggio

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 }}
  2. 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

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 eemail.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 }}
  2. 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

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 }}
  2. 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

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 la dashboard. URL

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 Dashboard URL e Silence. URL Per ulteriori informazioni sulla configurazione delle notifiche di Prometheus, consulta la documentazione di Prometheus sulle notifiche.

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 eslack.message.

    Il slack.print_alert modello viene utilizzato per stampare le etichette, le annotazioni e la dashboard URL 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 }}
  2. 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

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 titolo1 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 }}
  2. Per le e-mail, esegui il modello dal campo dell'oggetto nell'integrazione del punto di contatto e-mail:

    {{ template "common.subject_title" . }}
  3. Per Slack, esegui il modello dal campo del titolo nell'integrazione con i punti di contatto Slack:

    {{ template "common.subject_title" . }}