การแจ้งเตือนการสร้างรายได้ไม่ทำงาน

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่ เอกสารประกอบของ Apigee X
info

ลักษณะปัญหา

การแจ้งเตือนการสร้างรายได้ไม่ทำงาน จึงไม่มีการส่งอีเมลไปยังผู้ใช้ที่สมัครรับข้อมูล

ข้อความแสดงข้อผิดพลาด

ระบบจะไม่ส่งอีเมลเกี่ยวกับการแจ้งเตือนการสร้างรายได้ไปยังผู้ที่สมัครรับข้อมูล และจะไม่มีข้อความแสดงข้อผิดพลาดปรากฏขึ้น

เกี่ยวกับการแจ้งเตือนกิจกรรมการสร้างรายได้

การสร้างรายได้รองรับการแจ้งเตือนกิจกรรมที่ช่วยให้คุณทำสิ่งต่อไปนี้ได้

  1. แจ้งเตือนนักพัฒนาแอปทุกคนเกี่ยวกับกิจกรรมต่างๆ เช่น ผลิตภัณฑ์ใหม่ ข้อกำหนดและเงื่อนไขเวอร์ชันใหม่ หรือแพ็กเกจราคาใหม่
  2. แจ้งเตือนนักพัฒนาแอปบางรายเกี่ยวกับกิจกรรมต่างๆ เช่น การเผยแพร่เอกสารการเรียกเก็บเงิน หรือเมื่อมีการทำธุรกรรมถึงจำนวนเป้าหมายตามเปอร์เซ็นต์ที่กำหนด (หากนักพัฒนาแอปซื้อแพ็กเกจราคาการแจ้งเตือนที่ปรับได้)
  3. แจ้งเตือนผู้ให้บริการ API เกี่ยวกับกิจกรรมที่เกี่ยวข้องกับนักพัฒนาแอป เช่น เมื่อนักพัฒนาแอปสมัครใช้บัญชีหรือลงชื่อสมัครใช้แพ็กเกจราคา
  4. ดูรายละเอียดเพิ่มเติมเกี่ยวกับประเภทการแจ้งเตือนและวิธีตั้งค่าได้ที่ นี่

ข้อกำหนดเบื้องต้น

ตรวจสอบว่าคุณมีคุณสมบัติตรงตามข้อกำหนดเบื้องต้นต่อไปนี้

  1. การยอมรับแพ็กเกจราคา

    สำหรับการแจ้งเตือนการสร้างรายได้ต่อไปนี้ ให้ตรวจสอบว่านักพัฒนาแอปยอมรับแพ็กเกจราคาที่เกี่ยวข้องแล้วหรือไม่

    1. แพ็กเกจราคาใหม่
    2. แพ็กเกจราคาที่แก้ไขแล้ว
    3. แพ็กเกจราคาที่หมดอายุแล้ว
    4. แพ็กเกจราคาที่ต่ออายุแล้ว
    5. เกินขีดจำกัดของอัตรา
    6. แพ็กเกจราคา Freemium หมดแล้ว

      หากนักพัฒนาแอปยังไม่ยอมรับแพ็กเกจราคา ระบบจะไม่ทริกเกอร์การแจ้งเตือนเหล่านี้สำหรับนักพัฒนาแอปรายนั้น

  2. ควรเรียกใช้ตัวกำหนดเวลางานสำหรับการแจ้งเตือนที่ต้องการ

    การสร้างรายได้มีตัวกำหนดเวลางานและชุดงานที่กำหนดเวลาไว้ล่วงหน้าให้ทำงานในเวลาที่กำหนดไว้ล่วงหน้า คุณต้องเรียกใช้ตัวกำหนดเวลางานสำหรับการแจ้งเตือนที่ต้องการ หากไม่เรียกใช้ ระบบจะไม่ทริกเกอร์การแจ้งเตือน

    1. ใช้คำแนะนำที่ระบุไว้ในเอกสารต่อไปนี้เพื่อดูว่างานที่กำหนดเวลาไว้สำหรับการแจ้งเตือนที่ต้องการทำงานแล้วหรือไม่

      กำหนดเวลางานการสร้างรายได้

      หมายเหตุ: คุณเปลี่ยนกำหนดเวลาได้ทุกเมื่อตามกรณีการใช้งาน

    2. หากงานที่กำหนดเวลาไว้สำหรับการแจ้งเตือนที่ต้องการทำงานแล้วแต่คุณยังไม่ได้รับการแจ้งเตือน ให้ไปที่ส่วน สาเหตุที่เป็นไปได้ เพื่อแก้ปัญหาเพิ่มเติม
    3. หากยังไม่ทำงาน ให้รอจนกว่างานที่กำหนดเวลาไว้สำหรับการแจ้งเตือนที่ต้องการจะทำงาน

สาเหตุที่เป็นไปได้

สาเหตุที่เป็นไปได้บางประการของปัญหานี้มีดังนี้

สาเหตุ คำอธิบาย วิธีการแก้ปัญหาที่ใช้ได้กับ
การกำหนดค่า SMTP ไม่ถูกต้อง การกำหนดค่า SMTP ที่ระบุไม่ถูกต้อง ผู้ใช้ Edge Private Cloud

กำหนดเวลางานการแจ้งเตือน

งานการแจ้งเตือนยังไม่เริ่ม ผู้ใช้ Edge Public Cloud และ Private Cloud

สาเหตุที่ 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 ถูกต้อง ให้เรียกใช้ View notifications sent การเรียก 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 คุณจะเห็นว่าสถานะของการแจ้งเตือน "อัปเดตนักพัฒนาแอป" เฉพาะรายการข้างต้นแสดงเป็น "FAILED"

  6. สาเหตุอาจเป็นเพราะไม่สามารถเข้าถึงเซิร์ฟเวอร์และพอร์ต SMTP จากเซิร์ฟเวอร์การจัดการ ใช้คำสั่ง telnet เพื่อตรวจสอบว่าคุณเชื่อมต่อกับเซิร์ฟเวอร์ SMTP ที่ระบุในพอร์ตที่ระบุได้หรือไม่
    telnet <SMTP-server-IP-address> <SMTP-Port#>

    หากคุณได้รับข้อผิดพลาด "Connection timed out" หรือ "Connection refused" สำหรับเอาต์พุต telnet ให้ไปที่ส่วนวิธีแก้ปัญหา

วิธีแก้ปัญหา

  1. ประสานงานกับผู้ดูแลระบบเครือข่ายและตรวจสอบว่าเซิร์ฟเวอร์ SMTP ยอมรับการเชื่อมต่อจากเครื่องอื่นๆ ได้ และพอร์ตที่ระบุเปิดให้โลกภายนอกสำหรับการสื่อสาร
  2. หากปัญหายังคงอยู่ ให้ไปที่ส่วนข้อมูลการวินิจฉัยที่ต้องรวบรวมพร้อมกับ

สาเหตุที่ 2: กำหนดเวลางานการแจ้งเตือน

งานการแจ้งเตือนยังไม่เริ่ม

การวินิจฉัย

  1. เรียกใช้ API ต่อไปนี้เพื่อดูงานการสร้างรายได้ทั้งหมดที่กำหนดเวลาไว้ในปัจจุบัน

    /monetize/apis/get/triggers

  2. ตรวจสอบว่ามีเงื่อนไขการแจ้งเตือนและเปิดใช้สำหรับการแจ้งเตือนที่ไม่ทำงานหรือไม่ หากไม่มี ให้ไปที่ขั้นตอนที่ 3 เพื่อสร้างเงื่อนไขการแจ้งเตือนและข้ามขั้นตอนที่เหลือ
    1. หากมี ให้ตรวจสอบว่าได้เปิดใช้เป็น "จริง" แล้วหรือไม่ หากยังไม่ได้เปิดใช้ ให้เรียกใช้ Update a notification condition and action API เพื่ออัปเดตเงื่อนไขการแจ้งเตือน

      หรือ

    2. ใช้ UI เพื่ออัปเดตเงื่อนไขการแจ้งเตือนโดยใช้กระบวนการที่ระบุไว้ในเอกสารด้านล่าง

      UI ของเหตุการณ์

    3. เรียกใช้ Create a notification condition and action API เพื่อสร้างเงื่อนไขการแจ้งเตือนและการดำเนินการที่เหมาะสม
      1. เมื่อสร้างเงื่อนไขการแจ้งเตือนแล้ว ให้เรียกใช้ List notification conditions and actions API เพื่อยืนยันว่าได้สร้างเงื่อนไขการแจ้งเตือนแล้ว
      2. นอกจากนี้ คุณยังประมวลผลการแจ้งเตือนอีกครั้งได้โดยใช้ Reprocess a notification API
    4. ขั้นตอนนี้ใช้ได้กับผู้ใช้ Private Cloud เท่านั้น หากมีเงื่อนไขการแจ้งเตือนจากขั้นตอนที่ 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. ประมวลผลการแจ้งเตือนอีกครั้งโดยใช้ Reprocess a notification API

ข้อมูลการวินิจฉัยที่ต้องรวบรวม

หากยังพบปัญหาเดิมอยู่แม้จะทำตามวิธีการข้างต้นแล้ว โปรดติดต่อ ทีมสนับสนุนของ Apigee Edge และระบุข้อมูลการวินิจฉัยต่อไปนี้

ผู้ใช้ Public Cloud และ Private Cloud ควรรวบรวมข้อมูลต่อไปนี้

  1. ชื่อองค์กร
  2. ชื่อสภาพแวดล้อม
  3. เงื่อนไขการแจ้งเตือนการสร้างรายได้ที่ไม่ทำงาน
  4. รายละเอียดเกี่ยวกับส่วนต่างๆ ในเพลย์บุ๊กนี้ที่คุณได้ลองทำแล้ว รวมถึงข้อมูลเชิงลึกอื่นๆ ที่จะช่วยให้เราแก้ปัญหานี้ได้อย่างรวดเร็ว

นอกจากข้อมูลข้างต้นแล้ว ผู้ใช้ Private Cloud ควรรวบรวมข้อมูลต่อไปนี้ด้วย

  • บันทึกเซิร์ฟเวอร์การจัดการ

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