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

Вы просматриваете документацию 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

График выполнения уведомлений о заданиях

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

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

    Если в выводе telnet появляется ошибка «Время ожидания соединения истекло» или «Соединение отклонено», перейдите к разделу «Устранение проблемы».

Разрешение

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

Причина 2: График выполнения уведомлений

Задача по отправке уведомлений еще не запущена.

Диагноз

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

    /monetize/apis/get/triggers

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

      ИЛИ

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

      Пользовательский интерфейс событий

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