התראות המונטיזציה לא פועלות

מוצג המסמך של Apigee Edge.
עוברים אל מסמכי תיעוד של Apigee X.
מידע

תיאור הבעיה

התראות המונטיזציה לא פועלות, ולכן לא נשלחות אימיילים למשתמשים המנויים.

הודעת שגיאה

לא יישלחו הודעות אימייל בנושא מונטיזציה למשתמשים שנרשמו כמנויים. לא ייבדקו הודעות שגיאה.

מידע על התראות לגבי אירועי מונטיזציה

כשמפעילים מונטיזציה, יש תמיכה בהתראות על אירועים שמאפשרות:

  1. שליחת התראות לכל המפתחים לגבי אירועים, למשל: מוצרים חדשים, גרסאות חדשות של התנאים וההגבלות או תוכניות חדשות לתעריפים.
  2. להודיע למפתחים ספציפיים לגבי אירועים, כמו פרסום מסמך חיוב, או הגעה לאחוז מסוים ממספר העסקאות שאליו רוצים להגיע (אם הם רכשו תוכנית עם תעריף משתנה לקבלת התראות).
  3. שליחת הודעה לספק API לגבי אירועים שקשורים למפתחים, כמו כשמפתח נרשם לחשבון או כשמפתח נרשם לתוכנית תמחור ותשלומים.
  4. כאן אפשר למצוא פרטים נוספים על סוגי ההתראות הקיימים ועל אופן ההגדרה של ההתראות.

דרישות מוקדמות

ודאו שאתם עומדים בדרישות המוקדמות הבאות:

  1. אישור תוכנית המחירים

    בדקו אם המפתחים אישרו את תוכנית התמחור והתשלומים המתאימה כדי להציג את ההתראות הבאות בנושא מונטיזציה :

    1. תוכנית תעריפים חדשה
    2. תוכנית תעריפים מתוקנת
    3. תוכנית תעריפים שפג תוקפה
    4. תוכנית תעריפים מתחדשת
    5. חריגה ממגבלת הקצב של יצירת בקשות
    6. תוכנית תעריפים שאזלו על ידי {2/}

      אם המפתח לא אישר את תוכנית התעריפים, ההתראות האלה לא יופעלו עבור המפתח הספציפי הזה.

  2. יש להפעיל את מתזמן המשימות עבור ההתראה הספציפית

    המונטיזציה מספקת מתזמן משימות ורשימת משימות שמתוזמנות מראש לפעול במועדים מוגדרים מראש. צריך להריץ את מתזמן המשימות לקבלת התראה ספציפית. אם הוא לא פועל, ההתראות לא יופעלו.

    1. כדי לבדוק אם המשימה המתוזמנת של התראה מסוימת פעלה לפי ההוראות במסמך הבא:

      תזמון משימות מונטיזציה

      הערה: תמיד אפשר לשנות את התזמון בהתאם לתרחיש לדוגמה שלכם.

    2. אם המשימה המתוזמנת של ההתראה הספציפית כבר פעלה ואתם עדיין לא מקבלים את ההתראות, תוכלו להמשיך לקטע סיבות אפשריות כדי להמשיך לפתור את הבעיה.
    3. אם לא, תצטרכו להמתין עד שהמשימה המתוזמנת תרוץ.

סיבות אפשריות

אלה כמה מהסיבות האפשריות לבעיה הזו:

סיבה תיאור הוראות לפתרון בעיות רלוונטיות עבור
הגדרת ה-SMTP שגויה הגדרת ה-SMTP שסופקה שגויה. משתמשי Edge בענן פרטי

לוח הזמנים של המשימה

משימת ההתראה לא התחילה. משתמשי Edge בענן ציבורי ובענן פרטי

סיבה 1: הגדרת SMTP שגויה

אבחון

  1. צריך לבדוק את הקובץ /opt/apigee/edge-mint-management-server/conf/apix-mint.properties ולוודא שמאפייני ה-SMTP הבאים מוגדרים נכון.
    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. מוודאים שהגדרות שרת ה-SMTP והגדרות המשתמש נכונות. אם ההגדרות האלה שגויות או לא נקבעו, ממשיכים לשלב 3. אם זה נכון, ממשיכים לשלב 4.
  3. מעדכנים את הגדרות שרת ה-SMTP ואת הגדרות המשתמש בצורה נכונה לפי ההוראות במסמך הבא:

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

  4. כדאי לבדוק שוב אם התראות המונטיזציה פועלות עכשיו. אם לא, ממשיכים לשלב 5.
  5. אם הגדרות ה-SMTP נכונות, מריצים את הקריאה ל-API הצגת ההתראות שנשלחו כדי לראות את הסטטוס של ההתראה שנשלחה.
    1. ה-API הזה מחזיר קובץ JSON עם כל ההתראות שהופעלו והסטטוס של כל אחת מהן.
    2. בהמשך מופיע קובץ 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" : "..."
      }
      

      אם בודקים את קובץ ה-JSON, הסטטוס שלו הוא 'נכשל' להתראה הספציפית שלמעלה 'עדכון מפתח'.

  6. יכול להיות שהסיבה לכך היא שאי אפשר לגשת לשרת ה-SMTP וליציאת ה-SMTP משרת הניהול. משתמשים בפקודת telnet כדי לבדוק אם אפשר להתחבר לשרת ה-SMTP שצוין ביציאה שצוינה.
    telnet <SMTP-server-IP-address> <SMTP-Port#>
    

    אם מופיעה השגיאה "תם פרק הזמן שהוקצב להתחברות" או 'החיבור נדחה' עבור פלט telnet, ואז להמשיך לרזולוציה.

רזולוציה

  1. צריך לעבוד עם מנהל הרשת ולוודא ששרת ה-SMTP יכול לקבל חיבורים ממכונות אחרות, וכן שהיציאה הספציפית פתוחה לתקשורת מבחוץ.
  2. אם הבעיה עדיין נמשכת, ממשיכים לקטע 'חובה לאסוף פרטי אבחון' עם

סיבה 2: לוח זמנים של משימת התראות

משימת ההתראה לא התחילה.

אבחון

  1. מריצים את הקריאה הבאה ל-API כדי להציג את כל משימות המונטיזציה המתוזמנות כרגע.

    /monetize/apis/get/triggers

  2. בודקים אם התנאי להתראה קיים ומופעל עבור ההתראה שלא פועלת. אם הוא לא קיים, ממשיכים לשלב 3 כדי ליצור את התנאי לקבלת ההתראות ומדלגים על שאר השלבים.
    1. אם הוא קיים, בודקים אם הוא מופעל כ-true. אם לא, מריצים את Update a notification condition and action API כדי לעדכן את תנאי ההתראה.

      או

    2. משתמשים בממשק המשתמש כדי לעדכן את תנאי ההתראה באמצעות התהליך שמפורט במסמך הבא:

      ממשק המשתמש של אירועים

    3. מריצים את הקריאה Create a notification condition and action API כדי ליצור את התנאי המתאים להתראות ואת הפעולה המתאימה.
      1. אחרי שיוצרים את התנאי ההתראה, מריצים את הקריאה List Notification conditions and actions API כדי לוודא שהתנאי לקבלת ההתראה נוצר.
      2. אפשר גם לעבד מחדש את ההתראה באמצעות Reprocessing a Notification API.
    4. השלב הזה רלוונטי רק למשתמשים פרטיים בענן. אם תנאי ההתראות קיימים בשלב 1 וההתראות באימייל עדיין לא מגיעות, צריך לבדוק את היומן של שרת הניהול /opt/apigee/var/log/edge-management-server/logs/system.log ולראות אם התנאי לקבלת התראות הופעל.
      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. אם תנאי ההתראה מופעל ואתם עדיין לא מקבלים את ההתראות, עליכם להמשיך לקטע נדרש איסוף של פרטי האבחון, כולל מידע ופלט מהשלבים שצוינו למעלה.

רזולוציה

  1. מעבדים מחדש את ההתראה באמצעות API של התראה מחדש.

יש לאסוף פרטי אבחון

אם הבעיה ממשיכה גם אחרי ביצוע ההוראות שלמעלה, יש לפנות לתמיכה של Apigee Edge ולספק את פרטי האבחון הבאים.

משתמשי ענן ציבורי ופרטי צריכים לספק את הפרטים הבאים:

  1. שם הארגון
  2. שם הסביבה
  3. התנאי של התראת המונטיזציה שלא עבד
  4. פרטים על הקטעים במדריך הזה שכבר התנסות בהם וכל תובנות אחרות שיעזרו לנו לפתור את הבעיה במהירות.

בנוסף למידע שלמעלה, משתמשים ב-Private Cloud צריכים לספק גם את המידע הבא:

  • יומן של שרת הניהול

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