Les notifications de monétisation ne fonctionnent pas

Vous consultez la documentation d'Apigee Edge.
Consultez la documentation Apigee X.
en savoir plus

Problème constaté

Les notifications de monétisation ne fonctionnent pas et ne sont donc pas envoyées par e-mail aux utilisateurs abonnés.

Message d'erreur

Les e-mails de notification de monétisation ne seront pas envoyés aux abonnés. Aucun message d'erreur ne sera observé.

À propos des notifications d'événements de monétisation

La monétisation est compatible avec les notifications d'événements qui vous permettent:

  1. Informez tous les développeurs d'événements tels que de nouveaux produits, de nouvelles versions des conditions d'utilisation ou de nouveaux plans tarifaires.
  2. Informez les développeurs spécifiques d'événements tels qu'un document de facturation publié ou lorsqu'un pourcentage de leur nombre cible de transactions est atteint (s'ils ont acheté un plan de fréquence de notifications ajustable).
  3. Avertir un fournisseur d'API des événements liés aux développeurs, par exemple lorsqu'un développeur crée un compte ou s'inscrit à un plan tarifaire
  4. Pour en savoir plus sur les types de notifications disponibles et leur configuration, cliquez ici.

Conditions préalables

Assurez-vous que les conditions préalables suivantes sont remplies:

  1. Acceptation du forfait

    Pour les notifications de monétisation suivantes, vérifiez si les développeurs ont accepté le plan tarifaire correspondant :

    1. Nouveau plan tarifaire
    2. Plan tarifaire révisé
    3. Plan tarifaire expiré
    4. Forfait renouvelé
    5. Limite de débit dépassée
    6. Plan tarifaire Freemium épuisé

      Si le développeur n'a pas accepté le plan tarifaire, ces notifications ne se déclencheront pas pour ce développeur en particulier.

  2. Le planificateur de tâches doit être exécuté pour la notification spécifique.

    La monétisation fournit un planificateur de tâches et un ensemble de tâches dont l'exécution est programmée à des heures prédéfinies. Le planificateur de tâches doit être exécuté pour une notification spécifique. Dans le cas contraire, les notifications ne seront pas déclenchées.

    1. Suivez les instructions fournies dans le document suivant pour vérifier si la tâche planifiée pour une notification spécifique a été exécutée:

      Planifier des missions de monétisation

      Remarque:Vous pouvez toujours modifier la programmation en fonction de votre cas d'utilisation.

    2. Si la tâche planifiée pour la notification spécifique a déjà été exécutée et que vous ne recevez toujours pas les notifications, consultez la section Causes possibles pour résoudre le problème.
    3. Si ce n'est pas le cas, attendez que la tâche planifiée pour la notification spécifique s'exécute.

Causes possibles :

Voici quelques-unes des causes possibles de ce problème:

Cause Description Instructions de dépannage applicables à
Configuration SMTP incorrecte La configuration SMTP fournie est incorrecte. Utilisateurs de cloud privé périphérique

Calendrier du job de notification

Le job de notification n'a pas commencé. Utilisateurs de cloud public périphérique et de cloud privé

Cause 1: configuration SMTP incorrecte

Diagnostic

  1. Vérifiez le fichier /opt/apigee/edge-mint-management-server/conf/apix-mint.properties et assurez-vous que les propriétés SMTP suivantes sont correctement définies.
    mint.notification.javaMail.properties={"mail.smtp.host": "smtp.gmail.com",
    "mail.smtp.port": "465", "mail.smtp.starttls.enable": "true", "mail.smtp.auth": "true", "mail.smtp.username": "blah@gmail.com", "mail.smtp.password": "blah" }
    
  2. Vérifiez que les paramètres du serveur SMTP et de l'utilisateur sont corrects. Si ces paramètres sont incorrects ou ne sont pas définis, passez à l'étape 3. Si ces informations sont correctes, passez à l'étape 4.
  3. Mettez à jour les paramètres du serveur et des utilisateurs SMTP en suivant les instructions du document suivant:

    /private-cloud/latest/configuring-edge-smtp-server

  4. Vérifiez à nouveau si les notifications de monétisation fonctionnent à présent. Dans le cas contraire, passez à l'étape 5.
  5. Si les paramètres SMTP sont corrects, exécutez l'appel d'API Afficher les notifications envoyées pour vérifier l'état des notifications envoyées.
    1. Cette API renvoie un fichier JSON avec toutes les notifications qui ont été déclenchées et l'état de chacune d'elles.
    2. Vous trouverez ci-dessous un exemple de code JSON :
      {
              "hasMoreItems" : false,
              "notifications" : [ {
              "fromAlias" : "No Reply",
              "fromEmail" : "****@apigee.com",
              "id" : "4e2d0d9a-69a4-4430-957d-02fa2a3cb581",
              "notificationType" : "EMAIL",
              "orgId" : "myorg",
              "rawMessage" : "...",
              "retryCount" : 0,
              "retryStatuses" : [ {
                   "responseCode" : 0,
                   "responseMessage" : "{\"Headers\":null,\"Content : \":null,\"StatusCode\":\"0\"}",
                   "retriedAt" : 1518605291092,
                   "retryAttempt" : 0
              } ],
              "source" : "MailTo: [****@blah.com], Org: [myorg], EventType: [UPDATE_DEVELOPER]",
              "status" : "FAILED",
              "subject" : "Notification of developer changing company details",
              "templateId" : "814315c8-d8ca-4b3e-90bb-a8366600e625",
              "templateName" : "DEFAULT_UPDATE_DEVELOPER_TEMPLATE",
              "templateParametersJSON" : "{\"developer.legalName\":\"\",\"developer.name\":\"John Smith\"}",
              "toAlias" : "***@blah.com",
              "toEmail" : "***@blah.com",
              "unsubscribeURL" : "..."
      }
      

      Si vous vérifiez le fichier JSON, l'état affiché est "ÉCHEC" pour la notification Mettre à jour le développeur ci-dessus.

  6. Ce problème peut être dû au fait que le serveur et le port SMTP ne sont peut-être pas accessibles depuis le serveur de gestion. Utilisez la commande "telnet" pour vérifier si vous pouvez vous connecter au serveur SMTP spécifié sur le port indiqué.
    telnet <SMTP-server-IP-address> <SMTP-Port#>
    

    Si le message d'erreur "Connection timed out" (Connexion expirée) ou "Connection refused" (Connexion refusée) s'affiche pour la sortie Telnet, passez à l'étape "Resolution" (Résolution).

Résolution

  1. Avec l'aide de votre administrateur réseau, assurez-vous que le serveur SMTP est en mesure d'accepter les connexions provenant d'autres ordinateurs et que le port spécifique est ouvert à l'extérieur pour la communication.
  2. Si le problème persiste, consultez les informations de diagnostic nécessaires à l'aide des

Cause 2: programmation du job de notification

Le job de notification n'a pas commencé.

Diagnostic

  1. Exécutez l'appel d'API suivant pour afficher toutes les tâches de monétisation actuellement planifiées.

    /monetize/apis/get/triggers

  2. Vérifiez si la condition de notification est présente et activée pour la notification qui ne fonctionne pas. Si elle est absente, passez à l'étape 3 pour créer la condition de notification et ignorez les autres étapes.
    1. S'il est présent, vérifiez s'il est activé sur "true". Si ce n'est pas le cas, exécutez Mettre à jour une condition de notification et une API d'action pour mettre à jour la condition de notification.

      OU

    2. Utilisez l'interface utilisateur pour mettre à jour la condition de notification à l'aide du processus décrit dans la documentation ci-dessous:

      Interface utilisateur des événements

    3. Exécutez l'appel Create a notification condition and action API (Créer une condition de notification et une API d'action) pour créer la condition de notification appropriée et l'action correspondante.
      1. Une fois la condition de notification créée, exécutez l'appel d'API List notification conditions and actions API pour vérifier si la condition a été créée.
      2. Vous pouvez également traiter à nouveau la notification en utilisant l'option Retraiter une API de notification.
    4. Cette étape ne s'applique qu'aux utilisateurs du Private Cloud. Si la condition de notification de l'étape 1 est présente et que les e-mails de notification ne sont toujours pas envoyés, consultez le journal du serveur de gestion /opt/apigee/var/log/edge-management-server/logs/system.log pour voir si la condition de notification a été déclenchée.
      grep "Executing Mint Scheduler" /opt/apigee/var/log/edge-management-server/logs/system.log | grep  -o  "Executing Mint Scheduler : \[.*\]" | grep -v "for org : \[null\]" |sort | uniq -c
      
    5. Si la condition de notification est déclenchée et que vous ne recevez toujours pas les notifications, passez à Obligation de recueillir des informations de diagnostic. Vous y trouverez les informations et résultats des étapes ci-dessus.

Solution

  1. Traiter à nouveau la notification à l'aide de l'API Retraiter une notification

Doit recueillir des informations de diagnostic

Si le problème persiste même après avoir suivi les instructions ci-dessus, veuillez contacter l'assistance Apigee Edge et fournir les informations de diagnostic suivantes.

Les utilisateurs des clouds publics et privés doivent fournir les informations suivantes:

  1. Nom de l'organisation
  2. Nom de l'environnement
  3. Condition de notification de monétisation qui n'a pas fonctionné
  4. Des informations sur les sections de ce playbook qui ont été testées et sur d'autres informations qui nous aideront à accélérer la résolution de ce problème.

Outre les informations ci-dessus, les utilisateurs du cloud privé doivent également fournir les informations suivantes:

  • Journal du serveur de gestion

    /opt/apigee/var/log/edge-management-server/logs/system.log