Уведомления о монетизации не работают

Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X.
информация

Симптом

Уведомления о монетизации не работают, поэтому электронные письма не отправляются подписанным пользователям.

Сообщение об ошибке

Письма с уведомлением о монетизации подписчикам не будут отправлены. Никаких сообщений об ошибках не будет.

Об уведомлениях о событиях монетизации

Монетизация поддерживает уведомления о событиях, которые позволяют вам:

  1. Уведомляйте всех разработчиков о таких событиях, как новые продукты, новые версии Условий и условий или новые тарифные планы.
  2. Уведомляйте конкретных разработчиков о таких событиях, как публикация платежного документа или достижение определенного процента целевого количества транзакций (если они приобрели план с регулируемой скоростью уведомлений).
  3. Уведомляйте поставщика API о событиях, связанных с разработчиком, например, когда разработчик регистрирует учетную запись или подписывается на тарифный план.
  4. Более подробную информацию о том, какие типы уведомлений бывают и как их настроить, можно найти здесь .

Предварительные условия

Убедитесь, что выполнены следующие предварительные условия:

  1. Принятие тарифного плана

    Для следующих уведомлений о монетизации проверьте, приняли ли разработчики соответствующий тарифный план:

    1. Новый тарифный план
    2. Пересмотренный тарифный план
    3. Тарифный план с истекшим сроком действия
    4. Обновленный тарифный план
    5. Превышен лимит скорости
    6. Исчерпанный тарифный план Freemium

      Если разработчик не принял тарифный план, эти уведомления не сработают для этого конкретного разработчика.

  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, он покажет статус «FAILED» для указанного выше уведомления «Обновить разработчика» .

  6. Возможно, это связано с тем, что SMTP-сервер и порт недоступны с сервера управления. Используйте команду telnet, чтобы проверить, можете ли вы подключиться к указанному SMTP-серверу через указанный порт.
    telnet <SMTP-server-IP-address> <SMTP-Port#>

    Если вы получаете сообщение об ошибке «Тайм-аут соединения» или «Соединение отклонено» для вывода Telnet, перейдите к разделу «Решение».

Разрешение

  1. Обратитесь к своему сетевому администратору и убедитесь, что SMTP-сервер может принимать соединения от других компьютеров, а также, что определенный порт открыт для связи с внешним миром.
  2. Если проблема не устранена, перейдите к разделу «Необходимо собрать диагностическую информацию» с

Причина 2: Расписание заданий уведомлений

Задача уведомления не запущена.

Диагностика

  1. Запустите следующий вызов API, чтобы просмотреть все запланированные на данный момент задания монетизации.

    /монетизировать/apis/get/триггеры

  2. Проверьте, присутствует ли условие уведомления и включено ли оно для уведомления, которое не работает. Если его нет, перейдите к шагу №3, чтобы создать условие уведомления, и пропустите остальные шаги.
    1. Если он присутствует, проверьте, включен ли он в значение true. Если нет, запустите Обновление условия уведомления и API действий , чтобы обновить условие уведомления.

      ИЛИ

    2. Используйте пользовательский интерфейс для обновления условия уведомления, используя процесс, описанный в следующем документе:

      Интерфейс событий

    3. Запустите вызов API «Создать условие уведомления и действие» , чтобы создать соответствующее условие уведомления и соответствующее действие.
      1. После создания условия уведомления запустите вызов API «Список условий уведомления и действий», чтобы проверить, создано ли условие уведомления.
      2. Вы также можете повторно обработать уведомление, используя Reprocess 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. Подробная информация о том, какие разделы этого руководства были опробованы, а также любые другие сведения, которые помогут нам ускорить решение этой проблемы.

В дополнение к вышеуказанной информации пользователи частного облака также должны предоставить следующую информацию:

  • Журнал сервера управления

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