Вы просматриваете документацию по Apigee Edge.
См. документацию по Apigee X.
Симптом
Уведомления о монетизации не работают, поэтому электронные письма не отправляются подписавшимся пользователям.
Сообщение об ошибке
Письма об уведомлении о монетизации подписанным людям не будут отправлены. Сообщений об ошибках не будет.
Об уведомлениях о событиях монетизации
Монетизация поддерживает уведомления о событиях, которые позволяют:
- Уведомляйте всех разработчиков о таких событиях, как новые продукты, новые версии Условий и условий или новые тарифные планы.
- Уведомлять конкретных разработчиков о таких событиях, как публикация платежного документа или о достижении определенного процента от их целевого количества транзакций (если они приобрели тарифный план с регулируемой частотой уведомлений).
- Уведомлять поставщика API о событиях, связанных с разработчиком, например, когда разработчик регистрирует учетную запись или когда разработчик подписывается на тарифный план.
- Подробнее об этом, о том, какие существуют типы уведомлений и как их настроить, можно узнать здесь .
Предпосылки
Убедитесь, что выполнены следующие предварительные условия:
- Принятие тарифного плана
Для следующих уведомлений о монетизации проверьте, приняли ли разработчики соответствующий тарифный план:
- Новый тарифный план
- Обновленный тарифный план
- Тарифный план с истекшим сроком действия
- Обновленный тарифный план
- Ограничение скорости превышено
- Исчерпанный тарифный план Freemium
Если разработчик не принял тарифный план, эти уведомления не будут срабатывать для этого конкретного разработчика.
- Планировщик заданий должен запускаться для конкретного уведомления.
Монетизация предоставляет планировщик заданий и набор заданий, которые заранее запланированы для запуска в заранее назначенное время. Планировщик заданий должен быть запущен для определенного уведомления. Если он не запущен, уведомления не будут срабатывать.
- Используйте инструкции, приведенные в следующем документе, чтобы узнать, запущено ли запланированное задание для определенного уведомления:
Расписание заданий по монетизации
Примечание. Вы всегда можете изменить расписание в зависимости от вашего варианта использования.
- Если запланированное задание для определенного уведомления уже запущено, но вы все еще не получаете уведомления, перейдите к разделу «Возможные причины» для дальнейшего устранения этой проблемы.
- Если нет, подождите, пока не запустится запланированное задание для конкретного уведомления.
- Используйте инструкции, приведенные в следующем документе, чтобы узнать, запущено ли запланированное задание для определенного уведомления:
Возможные причины
Некоторые из возможных причин этой проблемы:
Причина | Описание | Инструкции по устранению неполадок, применимые для |
---|---|---|
Неверная конфигурация SMTP | Предоставленная конфигурация SMTP неверна. | Пользователи пограничного частного облака |
Задание уведомления не запущено. | Пользователи Edge Public Cloud и Private Cloud |
Причина 1: неправильная конфигурация SMTP
Диагноз
- Проверьте файл
/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" }
- Проверьте правильность SMTP-сервера и пользовательских настроек. Если эти настройки неверны или не установлены, перейдите к шагу №3. Если это правильно, перейдите к шагу № 4.
- Правильно обновите SMTP-сервер и пользовательские настройки, следуя инструкциям в следующем документе:
- Еще раз проверьте, работают ли теперь уведомления о монетизации. Если нет, перейдите к шагу 5.
- Если настройки SMTP верны, запустите вызов API просмотра отправленных уведомлений , чтобы увидеть статус отправленного уведомления.
- Этот API возвращает JSON со всеми запущенными уведомлениями и статусом каждого из них.
- Пример 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» для вышеупомянутого конкретного уведомления «Update Developer» .
- Возможно, это вызвано тем, что SMTP-сервер и порт могут быть недоступны с сервера управления. Используйте команду telnet, чтобы проверить, можете ли вы подключиться к указанному SMTP-серверу через указанный порт.
telnet <SMTP-server-IP-address> <SMTP-Port#>
Если вы получаете сообщение об ошибке «Время ожидания подключения истекло» или «Отказано в подключении» для вывода telnet, перейдите к разделу «Решение».
Разрешение
- Обратитесь к своему сетевому администратору и убедитесь, что SMTP-сервер может принимать соединения с других компьютеров, а также что определенный порт открыт для связи с внешним миром.
- Если проблема не устранена, перейдите к разделу «Обязательно собрать диагностическую информацию».
Причина 2: Расписание заданий уведомлений
Задание уведомления не запущено.
Диагноз
- Выполните следующий вызов API, чтобы просмотреть все текущие запланированные задания монетизации.
- Проверьте, присутствует ли условие уведомления и включено ли оно для уведомления, которое не работает. Если его нет, перейдите к шагу №3, чтобы создать условие уведомления, и пропустите остальные шаги.
- Если он присутствует, проверьте, включен ли он в true. Если нет, запустите Обновление условия уведомления и API действий , чтобы обновить условие уведомления.
ИЛИ
- Используйте пользовательский интерфейс для обновления условия уведомления, используя процесс, описанный в следующем документе:
- Запустите вызов API создания условия уведомления и действия , чтобы создать соответствующее условие уведомления и соответствующее действие.
- После создания условия уведомления запустите API-вызов списка условий уведомления и действий , чтобы проверить, было ли создано условие уведомления.
- Вы также можете повторно обработать уведомление с помощью API повторной обработки уведомления .
- Этот шаг применим только для пользователей частного облака . Если условие уведомления присутствует из шага № 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
- Если условие уведомления срабатывает, а вы по-прежнему не получаете уведомления, перейдите к разделу «Необходимо собрать диагностическую информацию» с информацией и выходными данными из описанных выше шагов.
- Если он присутствует, проверьте, включен ли он в true. Если нет, запустите Обновление условия уведомления и API действий , чтобы обновить условие уведомления.
Разрешение
- Повторно обработать уведомление с помощью API повторной обработки уведомления.
Необходимо собрать диагностическую информацию
Если проблема не устранена даже после выполнения приведенных выше инструкций, обратитесь в службу поддержки Apigee Edge и предоставьте следующую диагностическую информацию.
Пользователи публичного и частного облака должны предоставить следующую информацию:
- Название организации
- Имя среды
- Условие уведомления о монетизации, которое не сработало
- Подробная информация о том, какие разделы этого Playbook были опробованы, и любая другая информация, которая поможет нам ускорить решение этой проблемы.
В дополнение к вышеуказанной информации пользователи частного облака также должны предоставить следующую информацию:
- Журнал сервера управления
/opt/apigee/var/log/edge-management-server/logs/system.log