Tous les produits
Search
Centre de documentation

Application Real-Time Monitoring Service:Envoyer des notifications d'alerte vers un webhook personnalisé

Dernière mise à jour :Aug 10, 2026

Lors de la création d'une politique de notification, vous pouvez envoyer les notifications d'alerte vers une URL de webhook personnalisée. La fonctionnalité de gestion des alertes d'Application Real-Time Monitoring Service (ARMS) permet d'acheminer les alertes vers des services tiers via un webhook. Cette rubrique utilise Lark comme exemple pour illustrer la configuration d'un webhook destiné à recevoir ces notifications.

Étape 1 : Obtenir une URL de webhook Lark

Configurez un bot webhook Lark depuis le client de bureau Lark.

  1. Ouvrez Lark et connectez-vous.

  2. Cliquez sur l'icône +, puis sur New group afin de créer un groupe de réception des alertes.

  3. Cliquez sur l'icône des paramètres du groupe, puis accédez à l'onglet Bots.

  4. Sous l'onglet Bots, cliquez sur Add Bot.

  5. Dans le panneau Add Bot, sélectionnez Custom Bot.

  6. Sur la page de configuration, renseignez les champs Bot name et Description, puis cliquez sur Add.

  7. Dans la section résultante, cliquez sur Copy pour sauvegarder l'URL du webhook, puis sur Complete.

    Dans la section Security Settings, cochez la case Custom Keywords et saisissez le mot-clé alert dans la zone de texte.

Étape 2 : Créer un webhook

  1. Connectez-vous à la console ARMS. Dans le volet de navigation de gauche, accédez à Alert Management > Notification Objects.

  2. Sélectionnez l'onglet Webhook Integration, puis cliquez sur Create Webhook.

  3. Dans la boîte de dialogue Create Webhook, configurez les paramètres suivants.

    Parameter

    Description

    Webhook name

    Requis. Nom personnalisé du webhook.

    Post/Get

    Requis. Méthode HTTP. L'URL ne doit pas dépasser 256 caractères.

    Dans cet exemple, sélectionnez Post et collez l'URL du webhook obtenue à l'Étape 1 : Obtenir une URL de webhook Lark dans la zone de texte à droite.

    Header and Param

    Facultatif. Spécifie l'en-tête de requête (200 caractères maximum). Cliquez sur +Add pour ajouter d'autres en-têtes ou paramètres. L'en-tête par défaut est Content-Type: text/plain; charset=UTF-8. Le nombre total d'en-têtes et de paramètres est limité à 6.

    Dans cet exemple, définissez les deux Headers suivants :

    • Arms-Content-Type : json

    • Content-Type : application/json

    Notification template

    Facultatif. Modèle des notifications envoyées lors du déclenchement d'une alerte. Ce paramètre n'est disponible qu'avec la méthode Post. Utilisez l'espace réservé $content pour inclure le contenu de la notification (500 caractères maximum). Pour plus d'informations, consultez Configurer un modèle de notification et un modèle de webhook.

    {
        "Alert Name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}",
        "Cluster Name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}",
        "Application Name":"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}",
        "Notification Policy":"{{ .dispatchRuleName }}",
        "Alert Time":"{{ .startTime }}",
        "Alert Content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}"
        }

    Pour Lark, utilisez le format de texte suivant :

    {
          "msg_type": "text",
          "content": {
            "text": "Alert Name: {{ .commonLabels.alertname }}\n{{if .commonLabels.clustername }}Cluster Name: {{ .commonLabels.clustername }}\n{{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}Application Name: {{ .commonLabels._aliyun_arms_involvedObject_name }}\n{{ end }}Notification Policy: {{ .dispatchRuleName }} \nAlert Time: {{ .startTime }} \nAlert Content: {{ for .alerts }} {{ .annotations.message }}\n {{ end }}"
          }
        }

    Template to Clear Alerts

    Facultatif. Modèle des notifications envoyées lors de la résolution d'une alerte. Ce paramètre n'est disponible qu'avec la méthode Post. Utilisez l'espace réservé $content pour inclure le contenu de la notification (500 caractères maximum). Pour plus d'informations, consultez Configurer un modèle de notification et un modèle de webhook.

    {
        "Alert Name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}",
        "Cluster Name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}",
        "Application Name":"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}",
        "Notification Policy":"{{ .dispatchRuleName }}",
        "Recovery Time":"{{ .endTime }}",
        "Alert Content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}"
        }

    Pour Lark, utilisez le format de texte suivant :

    {
          "msg_type": "text",
          "content": {
            "text": "Alert Name: {{ .commonLabels.alertname }}\n{{if .commonLabels.clustername }}Cluster Name: {{ .commonLabels.clustername }}\n{{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}Application Name: {{ .commonLabels._aliyun_arms_involvedObject_name }}\n{{ end }}Recovery Time: {{ .startTime }} \nNotification Policy: {{ .dispatchRuleName }} \nCleared Alert Content: {{ for .alerts }} {{ .annotations.message }}\n {{ end }}"
          }
        }
  4. Facultatif : Cliquez sur Send Test pour vérifier la configuration.

  5. Cliquez sur OK.

Étape 3 : Configurer une politique de notification

Créez ou modifiez une politique de notification. Définissez les Notification Objects sur Universal Webhook, puis sélectionnez le webhook créé. Pour plus d'informations, consultez Politique de notification.

Remarque

Une requête de webhook expire si aucune réponse n'est reçue sous 5 secondes, ce qui entraîne l'échec de la notification.