Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Utilisation de modèles de messagerie

Mode de mise au point
Utilisation de modèles de messagerie - Amazon Managed Grafana

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.

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.

Cette rubrique de documentation est conçue pour les espaces de travail Grafana qui prennent en charge la version 8.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

Pour les espaces de travail Grafana compatibles avec la version 9.x de Grafana, voir. Travailler dans la version 9 de Grafana

Les notifications envoyées via Travailler avec les points de contact sont créées à l'aide de modèles de messagerie. Les modèles par défaut de Grafana sont basés sur le système de modèles Go dans lequel certains champs sont évalués sous forme de texte, tandis que d'autres sont évalués sous forme de HTML (ce qui peut affecter l'évasion).

Comme la plupart des champs des points de contact peuvent être modélisés, vous pouvez créer des modèles personnalisés réutilisables et les utiliser dans plusieurs points de contact. La Données du modèle rubrique répertorie les variables disponibles pour la création de modèles.

Utilisation de modèles

Les modèles sont utilisés pour créer un message. Par exemple, avec un message d'alerte Slack, vous pouvez définir le titre et le corps du point de contact. L'exemple suivant montre comment utiliser des modèles par défaut pour créer un titre contenant le nombre d'alertes déclenchées et résolues, ainsi qu'un corps répertoriant les alertes et leur statut.

  • Titre :

    {{ len .Alerts.Firing }} firing, {{ len .Alerts.Resolved }} resolved
  • Corps du texte :

    {{ range .Alerts }}{{ .Status }}: {{ .Labels.alertname }} {{end }}

Vous pouvez créer vos propres modèles personnalisés, comme dans l'exemple suivant.

  • Titre :

    {{ template "slack.default.title" .}}
  • Corps du texte :

    {{ template "mymessage" .}}

Voici un exemple de modèle.

{{ define "myalert" }} [{{.Status}}] {{ .Labels.alertname }} Labels: {{ range .Labels.SortedPairs }} {{ .Name }}: {{ .Value }} {{ end }} {{ if gt (len .Annotations) 0 }} Annotations: {{ range .Annotations.SortedPairs }} {{ .Name }}: {{ .Value }} {{ end }} {{ end }} {{ if gt (len .SilenceURL ) 0 }} Silence alert: {{ .SilenceURL }} {{ end }} {{ if gt (len .DashboardURL ) 0 }} Go to dashboard: {{ .DashboardURL }} {{ end }} {{ end }}

Les procédures suivantes indiquent comment créer, modifier et supprimer des modèles de messages personnalisés.

Pour créer un modèle de message
  1. Depuis votre console Grafana, dans le menu Grafana, choisissez l'icône d'alerte (cloche) pour ouvrir la page d'alerte.

  2. Choisissez Points de contact.

  3. Dans la liste déroulante Alertmanager, sélectionnez l'instance Alertmanager pour laquelle vous souhaitez créer un modèle de message. La valeur par défaut est le Grafana Alertmanager.

  4. Choisissez Ajouter un modèle.

  5. Ajoutez un nom descriptif.

  6. Ajoutez le contenu du modèle, par exemple :

    {{ define "mymessage" }} {{ range .Alerts }} [{{ .Status }}] {{ range .Labels }} {{ .Name }}={{.Value }}{{end}} {{ end }} {{ end }}

    La define balise de la section Contenu attribue le nom du modèle. Cette balise est facultative, et lorsqu'elle est omise, le nom du modèle est dérivé du champ Nom. Lorsque les deux sont spécifiés, il est recommandé de les conserver identiques.

  7. Choisissez Enregistrer le modèle.

Note

Dans les modèles de messages d'alerte, le code HTML est affiché sous forme de texte, les caractères de contrôle étant ignorés. Le rendu du code HTML dans la notification résultante n'est pas pris en charge par Grafana.

Pour modifier un modèle de message
  1. Sur la page Alertes, choisissez Points de contact pour ouvrir la liste des points de contact.

  2. Dans le tableau Modèle, recherchez le modèle que vous souhaitez modifier, puis cliquez sur l'icône Modifier (stylo).

  3. Apportez vos modifications, puis choisissez Enregistrer le modèle.

Pour supprimer un modèle de message
  1. Sur la page Alertes, choisissez Points de contact pour ouvrir la liste des points de contact.

  2. Dans le tableau Modèle, recherchez le modèle que vous souhaitez supprimer, puis cliquez sur l'icône Supprimer (corbeille).

  3. Choisissez Oui, supprimer pour supprimer le modèle.

Modèles imbriqués

Vous pouvez intégrer des modèles dans d'autres modèles.

Par exemple, vous pouvez définir un fragment de modèle à l'aide du define mot clé :

{{ define "mytemplate" }} {{ len .Alerts.Firing }} firing. {{ len .Alerts.Resolved }} resolved. {{ end }}

Vous pouvez ensuite intégrer des modèles personnalisés dans ce fragment à l'aide du template mot clé. Par exemple :

Alert summary: {{ template "mytemplate" . }}

Vous pouvez utiliser les options de modèle intégrées suivantes pour intégrer des modèles personnalisés.

Nom Remarques

default.title

Affiche des informations d'état de haut niveau.

default.message

Fournit un résumé formaté des alertes déclenchées et résolues.

Exemples de modèles personnalisés

Voici des exemples d'utilisation de modèles personnalisés.

Modèle pour afficher une seule alerte :

{{ define "myalert" }} [{{.Status}}] {{ .Labels.alertname }} Labels: {{ range .Labels.SortedPairs }} {{ .Name }}: {{ .Value }} {{ end }} {{ if gt (len .Annotations) 0 }} Annotations: {{ range .Annotations.SortedPairs }} {{ .Name }}: {{ .Value }} {{ end }} {{ end }} {{ if gt (len .SilenceURL ) 0 }} Silence alert: {{ .SilenceURL }} {{ end }} {{ if gt (len .DashboardURL ) 0 }} Go to dashboard: {{ .DashboardURL }} {{ end }} {{ end }}

Modèle pour afficher l'intégralité du message de notification :

{{ define "mymessage" }} {{ if gt (len .Alerts.Firing) 0 }} {{ len .Alerts.Firing }} firing: {{ range .Alerts.Firing }} {{ template "myalert" .}} {{ end }} {{ end }} {{ if gt (len .Alerts.Resolved) 0 }} {{ len .Alerts.Resolved }} resolved: {{ range .Alerts.Resolved }} {{ template "myalert" .}} {{ end }} {{ end }} {{ end }}

Données du modèle

Les données suivantes sont transmises aux modèles de messages.

Nom Type Remarques

Receiver

chaîne

Nom du point de contact auquel la notification est envoyée.

Status

chaîne

déclenchement si au moins une alerte est déclenchée, sinon résolu.

Alerts

Alerte

Liste des objets d'alerte inclus dans cette notification (voir ci-dessous).

GroupLabels

KeyValue

Libellés selon lesquels ces alertes ont été regroupées.

CommonLabels

KeyValue

Libellés communs à toutes les alertes incluses dans cette notification.

CommonAnnotations

KeyValue

Annotations communes à toutes les alertes incluses dans cette notification.

ExternalURL

chaîne

Lien de retour vers le Grafana qui a envoyé la notification. Si vous utilisez un Alertmanager externe, renvoyez le lien vers ce Alertmanager.

Le Alerts type expose deux fonctions permettant de filtrer les alertes renvoyées.

  • Alerts.Firing— Renvoie la liste des alertes de déclenchement.

  • Alerts.Resolved— Renvoie la liste des alertes résolues.

Alerte (type)

Le type d'alerte contient les données suivantes.

Nom Type Remarques

Statut

chaîne

firing ou resolved.

Étiquettes

KeyValue

Ensemble d'étiquettes associées à l'alerte.

Annotations

KeyValue

Ensemble d'annotations associées à l'alerte.

StartsAt

Heure. Heure

Heure à laquelle l'alerte a commencé à se déclencher.

EndsAt

Heure. Heure

Paramétré uniquement si l'heure de fin d'une alerte est connue. Sinon, définissez un délai d'expiration configurable à compter de la date de réception de la dernière alerte.

URL du générateur

chaîne

Un lien de retour vers Grafana ou un Alertmanager externe.

URL de silence

chaîne

Lien vers le formulaire Grafana Silence avec des étiquettes préremplies pour cette alerte. Uniquement pour les alertes gérées par Grafana.

URL du tableau de bord

chaîne

Lien vers le tableau de bord de Grafana, si la règle d'alerte appartient à l'une d'entre elles. Uniquement pour les alertes gérées par Grafana.

URL du panneau

chaîne

Lien vers le panneau du tableau de bord de Grafana, si la règle d'alerte appartient à l'une d'entre elles. Uniquement pour les alertes gérées par Grafana.

Empreinte digitale

chaîne

Empreinte digitale qui peut être utilisée pour identifier l'alerte.

ValueString

chaîne

Chaîne contenant les libellés et la valeur de chaque expression réduite de l'alerte.

KeyValue type

Le KeyValue type est un ensemble de paires de chaînes clé/valeur qui représentent des étiquettes et des annotations.

Outre l'accès direct aux données stockées sous forme de fichierKeyValue, il existe également des méthodes de tri, de suppression et de transformation des données.

Nom Arguments Renvoie Remarques

SortedPairs

Liste triée des paires de chaînes de clés et de valeurs

Remove (suppression)

[] chaîne

KeyValue

Renvoie une copie de la carte clé/valeur sans les clés données.

Noms

[] chaîne

Liste des noms d'étiquettes

Valeurs

[] chaîne

Liste des valeurs d'étiquette

Fonctions du modèle

À l'aide des fonctions du modèle, vous pouvez traiter les étiquettes et les annotations pour générer des notifications dynamiques. Les fonctions suivantes sont disponibles.

Nom Type d’argument Type de retour Description

humanize

nombre ou chaîne

chaîne

Convertit un nombre dans un format plus lisible à l'aide de préfixes métriques.

humanize1024

nombre ou chaîne

chaîne

Comme humanize, mais utilise 1024 comme base au lieu de 1000.

humanizeDuration

nombre ou chaîne

chaîne

Convertit une durée en secondes dans un format plus lisible.

humanizePercentage

nombre ou chaîne

chaîne

Convertit une valeur de ratio en une fraction de 100.

humanizeTimestamp

nombre ou chaîne

chaîne

Convertit un horodatage Unix en secondes dans un format plus lisible.

title

chaîne

chaîne

Strings.title, met en majuscule le premier caractère de chaque mot.

toUpper

chaîne

chaîne

cordes. ToUpper, convertit tous les caractères en majuscules.

toLower

chaîne

chaîne

cordes. ToLower, convertit tous les caractères en minuscules.

match

motif, texte

boolean

expression régulière. MatchString Teste une correspondance regexp non ancrée.

reReplaceAll

modèle, remplacement, texte

chaîne

Expression régulière. ReplaceAllString Substitution de Regexp, non ancrée.

graphLink

string - Objet JSON avec datasource champs expr et

chaîne

Renvoie le chemin d'accès à la vue graphique dans Explore pour l'expression et la source de données données.

tableLink

string - Objet JSON avec datasource champs expr et

chaîne

Renvoie le chemin d'accès à la vue tabulaire dans Explore pour l'expression et la source de données données.

args

[] interface {}

carte [chaîne] interface {}

Convertit une liste d'objets en carte avec des clés, par exemple arg0, arg1. Utilisez cette fonction pour transmettre plusieurs arguments aux modèles.

externalURL

rien

chaîne

Renvoie une chaîne représentant l'URL externe.

pathPrefix

rien

chaîne

Renvoie le chemin de l'URL externe.

Le tableau suivant présente des exemples d'utilisation de chaque fonction.

Fonction TemplateString Entrée Expected

humaniser

{humaniser $value}

1234567,0

1,235 M

humaniser 1024

{humaniser 1024$ de valeur}

1048576,0

1 mi

Humaniser la durée

{HumanizeDuration $value}

899,99

14 m 59 s

Pourcentage d'humanisation

{humanizePercentage $value}

0,1234567

12,35 %

Humaniser l'horodatage

{humanizeTimestamp $value}

1435065584,128

23/06/2015 13:19:44,128 +0000 UTC

title

{$value | titre}

un B C

Aa Bb CC

toUpper

{$value | toUpper}

un B C

AA BB CC

toLower

{$value | toLower}

un B C

AA BB CC

match

{correspond à « a+ » $labels.instance}

aa

true

reReplaceAll

{{ reReplaceAll « localhost :( .*) » « my.domain : $1 » $labels.instance}}

hôte local : 3000

mon domaine .domain : 3000

GraphLink

{{GraphLink « {\" expr \ » : \ "up \ », \ "source de données \ » : \ "gdev-prometheus \"} »}

/explorer ? left= ["now-1h », « now », « gdev-prometheus », {"source de données » « gdev-prometheus », « expr » « up », « instant » :false, "range » :true}]

Tableau Link

{{TableLink « {\" expr \ » : \ "up \ », \ "source de données \ » : \ "gdev-prometheus \"} »}

/explorer ? left= ["now-1h », « now », « gdev-prometheus », {"source de données » « gdev-prometheus », « expr » « up », « instant » :true, "range » :false}]

args

{{define « x »}} {{.arg0}} {{.arg1}} {{end}} {{modèle « x » (args 1 « 2 »)}}

1 2

URL externe

{URL externe}

http ://localhost/path/prefix

Préfixe de chemin

{PathPrefix}

/chemin/préfixe

Sur cette page

ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.