Configurer des alertes sur le trafic

Vous consultez la documentation d'Apigee Edge.
Accédez à la documentation Apigee X.
info

Utilisez une alerte de trafic pour déclencher une notification lorsque le trafic d'un environnement, d'un proxy ou d'une région change d'un pourcentage spécifié sur une période donnée.

Vous définissez la période sur :

  • 1 heure
  • 1 jour
  • 7 jours
  • 15 jours (API uniquement)
  • 30 jours (API uniquement)

Cette alerte fonctionne en comparant le trafic de la période actuelle à celui de la période précédente. Par exemple, vous spécifiez une période d'une heure. L'alerte compare ensuite le trafic de l'heure la plus récente à celui de l'heure précédente pour calculer la variation en pourcentage du trafic :

percentChange = ((currentTraffic - previousTraffic) / previousTraffic) * 100

Une valeur positive signifie que le trafic a augmenté, tandis qu'une valeur négative signifie qu'il a diminué.

Vous définissez ensuite le seuil qui déclenche une alerte de trafic sous la forme d'une augmentation ou d'une diminution en pourcentage du trafic de l'API pour la période spécifiée.

Avant de définir ce pourcentage, assurez-vous qu'il correspond à vos schémas de trafic habituels. Par exemple, si le trafic de votre API fluctue normalement au cours de la journée avec des pics de trafic horaires pouvant atteindre 100 % à certaines heures de pointe, ces pics sont normaux et ne devraient pas déclencher d'alerte. Toutefois, si vous configurez ensuite une alerte pour qu'elle se déclenche en cas d'augmentation de 50 % du trafic horaire, vous recevrez des alertes inutiles pour votre trafic normal.

Pour en savoir plus sur les alertes, consultez Configurer des alertes et des notifications.

Ajouter des alertes et des notifications sur le trafic

Pour ajouter des alertes et des notifications sur le trafic :
  1. Cliquez sur Analyser > Règles d'alerte dans l'interface utilisateur Edge.
  2. Cliquez sur +Alerte.
  3. Saisissez les informations générales suivantes concernant l'alerte :
    Champ Description
    Nom de l'alerte Nom de l'alerte. Utilisez un nom qui décrit le déclencheur et qui aura du sens pour vous. Le nom ne doit pas dépasser 128 caractères.
    Description Description de l'alerte.
    Type d'alerte Sélectionnez Trafic total. Pour en savoir plus, consultez À propos des types d'alertes.
    Environnement Sélectionnez l'environnement dans la liste déroulante.
    État Bouton permettant d'activer ou de désactiver l'alerte.
  4. Définissez le seuil et la dimension de la condition qui déclenchera l'alerte.
    Champ de condition Description
    Seuil

    Indiquez de déclencher l'alerte lorsque le trafic a augmenté de ou diminué de un pourcentage spécifique par rapport à un intervalle de temps précédent.

    Définissez le pourcentage augmenté de sur une valeur supérieure ou égale à 0 %. Définissez le pourcentage diminué de sur une valeur supérieure ou égale à 0 % et inférieure ou égale à 100 %.

    Vous pouvez choisir un intervalle de temps :

    • 1 heure
    • 1 jour
    • 1 semaine
    Dimension

    Cliquez sur + Ajouter une dimension et spécifiez les informations relatives à cette dimension qui doivent renvoyer des résultats, comme le proxy API et la région.

    Définissez une dimension spécifique sur :

    • Proxy : définissez un proxy spécifique ou Tous les proxys. Proxy n'accepte pas la valeur "Any". Vous pouvez ajouter une alerte distincte pour chaque proxy qui vous intéresse.
    • Région : définissez une région spécifique ou Toutes les régions. La région n'accepte pas la valeur "Tout". Vous pouvez ajouter une alerte distincte pour chaque région qui vous intéresse.
  5. Cliquez sur + Notification pour ajouter une notification d'alerte.
    Détails de la notification Description
    Canal Sélectionnez le canal de notification que vous souhaitez utiliser et spécifiez la destination : e-mail, Slack, PagerDuty ou webhook.
    Destination Spécifiez la destination en fonction du type de canal sélectionné :
    • E-mail - Adresse e-mail, telle que joe@company.com
    • Slack - URL du canal Slack, telle que https://hooks.slack.com/services/T00000000/B00000000/XXXXX
    • PagerDuty - Code PagerDuty, tel que abcd1234efgh56789
    • Webhook : URL du webhook, telle que https://apigee.com/test-webhook

      Remarque : Vous ne pouvez spécifier qu'une seule destination par notification. Pour spécifier plusieurs destinations pour un même type de chaîne, ajoutez des notifications supplémentaires.

  6. Pour ajouter des notifications supplémentaires, répétez l'étape précédente.
  7. Si vous avez ajouté une notification, définissez les champs suivants :
    Champ Description
    Playbook (Facultatif) Champ de texte libre destiné à fournir une brève description des actions recommandées pour résoudre les alertes lorsqu'elles se déclenchent. Vous pouvez également indiquer un lien vers votre wiki ou la page de votre communauté sur laquelle vous référencez les bonnes pratiques. Les informations contenues dans ce champ seront incluses dans la notification. Le contenu de ce champ ne peut pas dépasser 1 500 caractères.
    Limite Fréquence d'envoi des notifications. Sélectionnez une valeur dans la liste déroulante.
  8. Cliquez sur Enregistrer.

Afficher les alertes dans le tableau de bord "Événements"

Lorsque Edge détecte une condition d'alerte, il consigne automatiquement cette condition dans le tableau de bord Événements de l'interface utilisateur Edge. La liste des événements affichés dans le tableau de bord "Événements" inclut toutes les alertes, qu'elles soient corrigées ou certifiées.

Pour afficher une alerte :

  1. Cliquez sur Analyser > Événements dans l'interface utilisateur Edge. Le nouveau tableau de bord "Events" (Événements) s'affiche :

  2. Filtrez le tableau de bord des événements selon :

    • Environnement
    • Région
    • Période
  3. Sélectionnez une ligne dans le tableau de bord des événements pour afficher le Keystore contenant le certificat qui expire et examiner l'alerte plus en détail. Sur la page "Keystore", vous pouvez importer un nouveau certificat et supprimer celui qui arrive à expiration.

Utiliser les API d'alerte avec les alertes de trafic

La plupart des API que vous utilisez pour créer et gérer des alertes de trafic sont identiques à celles que vous utilisez avec d'autres types d'alertes :

Toutefois, certaines API disposent de propriétés supplémentaires qui permettent de gérer les alertes d'anomalies, parmi lesquelles :

  • Recevoir des alertes : affichez toutes les alertes, y compris les alertes fixes et d'anomalies.
  • Créer une alerte : créez une alerte fixe ou d'anomalie.
  • Update an Alert (Mettre à jour une alerte) : mettez à jour une définition d'alerte fixe ou d'anomalie.

Créer ou modifier une alerte de trafic

Utilisez les mêmes API pour créer ou mettre à jour une alerte de trafic, comme vous le faites actuellement pour les autres types d'alertes. Le corps de l'appel d'API pour créer ou mettre à jour une alerte de trafic est identique à celui utilisé pour les autres alertes, avec les modifications suivantes :

  • Ajoutez les nouvelles propriétés suivantes pour spécifier que l'alerte est une alerte de trafic :

    "alertType": "runtime"
    "alertSubType": "trafficfixed"

    Les valeurs par défaut de ces propriétés sont les suivantes :

    "alertType": "runtime"
    "alertSubType": "fixed"
  • Dans l'élément dimensions du tableau conditions :
    • Vous devez définir les valeurs des propriétés org, env, proxy et region. Seules ces propriétés sont acceptées. Vous pouvez définir proxy et region sur ALL.
    • Vous devez définir la valeur de la propriété traffic sur total.
  • Dans le tableau conditions :

    • La propriété metrics doit avoir la valeur trafficChange.
    • La propriété comparator doit être définie sur increasedBy ou decreasedBy.
    • La propriété threshold contient une valeur positive indiquant une augmentation ou une diminution du trafic en pourcentage, où une valeur de 1.0 correspond à 100 %. Pour increasedBy, la valeur doit être supérieure ou égale à 0,0 (0 %). Pour decreasedBy, la valeur doit être supérieure ou égale à 0,0 (0 %) et inférieure ou égale à 1,0 (100 %).
    • La propriété durationSeconds doit être définie sur l'une des valeurs suivantes : 3600 (1 heure), 86400 (1 jour), 604800 (7 jours), 1296000 (15 jours) ou 2592000 (30 jours) .
  • La propriété reportEnabled n'est pas acceptée pour les alertes de trafic.
L'exemple suivant montre comment configurer une alerte qui se déclenche lorsque le trafic d'une organisation et d'un environnement augmente de 50 % sur une période d'une heure. Une notification est envoyée au code PagerDuty spécifié lorsque l'alerte se déclenche.
curl 'https://apimonitoring.enterprise.apigee.com/alerts' \
  -X POST \
  -H 'Accept: application/json, text/plain, */*' -H "Content-Type: application/json" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -d '{
     "organization":"myorg",
     "name":"My Traffic Alert",
     "description":"My traffic alert",
     "environment":"prod",
     "enabled":true,
     "alertType":"runtime",
     "alertSubType":"trafficfixed",
     "conditions":[
     {
        "description":"",
        "dimensions": {
            "org":"nyorg",
            "env":"prod",
            "proxy":"ALL",
            "region":"ALL",
            "traffic":"total"
        },
        "metric": "trafficChange",
        "threshold": 0.5,
        "durationSeconds": 3600,
        "comparator": "increasedBy"
     }
     ],
     "notifications":[{ "channel":"pagerduty", "destination":"abcd1234efgh56789"}],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
}'

Définissez $ACCESS_TOKEN sur votre jeton d'accès OAuth 2.0, comme décrit dans la section Obtenir un jeton d'accès OAuth 2.0. Pour en savoir plus sur les options cURL utilisées dans cet exemple, consultez la section Utiliser cURL.

Pour en savoir plus sur l'utilisation de cette API, consultez Afficher les événements.

Recevoir des alertes sur le trafic

Par défaut, l'API Recevoir des alertes renvoie des informations sur toutes les alertes définies. Cette API utilise désormais des paramètres de requête pour vous permettre de filtrer les résultats :

  • enabled : si true spécifie de ne renvoyer que les alertes activées. La valeur par défaut est false.
  • alertType : indique le type d'alerte à renvoyer. Les valeurs autorisées sont runtime (valeur par défaut) et cert.
  • alertSubType : indique le sous-type d'alerte à renvoyer. La valeur par défaut n'est pas définie, ce qui implique le renvoi de tous les sous-types d'alerte.

Par exemple, utilisez l'appel d'API suivant pour renvoyer uniquement les alertes activées pour l'organisation nommée myorg :

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'

L'appel suivant ne renvoie que les alertes de trafic, qu'elles soient activées ou désactivées :

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=runtime&alertSubType=trafficfixed'

Définissez $ACCESS_TOKEN sur votre jeton d'accès OAuth 2.0, comme décrit dans la section Obtenir un jeton d'accès OAuth 2.0. Pour en savoir plus sur les options cURL utilisées dans cet exemple, consultez la section Utiliser cURL.