As notificações de monetização não estão funcionando

Você está vendo a documentação do Apigee Edge.
Acesse a documentação da Apigee X.
informações

Sintoma

As notificações de monetização não funcionam e, portanto, os e-mails não estão sendo enviados aos usuários inscritos.

Mensagem de erro

Os e-mails sobre notificações de monetização para as pessoas inscritas não serão enviados. Nenhuma mensagem de erro será observada.

Sobre as notificações de eventos de monetização

A monetização é compatível com notificações de eventos que permitem:

  1. Notifique todos os desenvolvedores sobre eventos como novos produtos, novas versões dos Termos e Condições ou novos planos de tarifas.
  2. Notifique desenvolvedores específicos sobre eventos, como a publicação de um documento de faturamento ou quando uma porcentagem do número desejado de transações é atingida (se eles compraram um plano de taxa de notificação ajustável).
  3. Notificar um provedor de API sobre eventos relacionados ao desenvolvedor, como o registro de uma conta ou a inscrição em um plano de tarifas.
  4. Clique aqui para mais detalhes sobre os tipos de notificação disponíveis e como configurar esse recurso.

Pré-requisitos

Verifique se os seguintes pré-requisitos foram atendidos:

  1. Aceitação do plano de tarifas

    Para as seguintes notificações de monetização, verifique se os desenvolvedores aceitaram o plano de preços correspondente :

    1. Novo plano de tarifa
    2. Plano de tarifa revisado
    3. Plano de tarifas expirado
    4. Plano de tarifas renovado
    5. O limite de taxa foi excedido
    6. Plano de tarifa Freemium esgotado

      Se o desenvolvedor não aceitar o plano de tarifas, essas notificações não serão acionadas para esse desenvolvedor específico.

  2. O programador de jobs deve ser executado para a notificação específica

    A monetização fornece um programador de jobs e um conjunto de jobs pré-agendados para serem executados em horários pré-designados. O programador de jobs precisa ser executado para uma notificação específica. Se ele não for executado, as notificações não serão acionadas.

    1. Use as instruções no documento a seguir para verificar se o job programado para uma notificação específica foi executado:

      Programar jobs de monetização

      Observação:é possível mudar a programação com base no seu caso de uso.

    2. Se o job programado para a notificação específica já tiver sido executado e você ainda não estiver recebendo as notificações, prossiga para a seção Possíveis causas para resolver esse problema.
    3. Caso contrário, aguarde até que o job programado para a notificação específica seja executado.

Causas possíveis

Algumas das possíveis causas para esse problema são:

Causa Descrição Instruções de solução de problemas aplicáveis a
Configuração SMTP incorreta A configuração do SMTP não está correta. Usuários da nuvem privada de borda

Programação do job de notificação

O job de notificação não foi iniciado. Usuários de nuvem pública e de nuvem privada de borda

Causa 1: configuração do SMTP incorreta

Diagnóstico

  1. Verifique o arquivo /opt/apigee/edge-mint-management-server/conf/apix-mint.properties e confirme se as propriedades SMTP a seguir estão definidas corretamente.
    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. Verifique se as configurações do usuário e do servidor SMTP estão corretas. Se essas configurações estiverem incorretas ou não forem definidas, prossiga para a etapa 3. Se estiver correto, prossiga para a Etapa 4.
  3. Atualize o servidor SMTP e as configurações de usuário corretamente usando as instruções no seguinte documento:

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

  4. Verifique novamente se as notificações de monetização estão funcionando. Caso contrário, prossiga para a etapa 5.
  5. Se as configurações do SMTP estiverem corretas, execute a chamada de API Ver notificações enviadas para ver o status da notificação enviada.
    1. Essa API retorna um JSON com todas as notificações que foram disparadas e o status de cada uma delas.
    2. Veja abaixo um exemplo de 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" : "..."
      }
      

      Se você conferir o JSON, o status da notificação Atualizar desenvolvedor acima vai aparecer como "FALHA".

  6. Isso pode ter sido causado porque o servidor SMTP e a porta podem não ser acessíveis pelo Servidor de gerenciamento. Use o comando telnet para verificar se é possível se conectar ao servidor SMTP especificado na porta especificada.
    telnet <SMTP-server-IP-address> <SMTP-Port#>
    

    Se você receber o erro "Tempo limite de conexão esgotado" ou "Conexão recusada" na saída de telnet, siga para Resolução.

Resolução

  1. Trabalhe com o administrador da sua rede e verifique se o servidor SMTP aceita conexões de outras máquinas e se a porta específica está aberta para comunicação externa.
  2. Se o problema persistir, prossiga para "Precisa coletar informações de diagnóstico" com os

Causa 2: programação do job de notificação

O job de notificação não foi iniciado.

Diagnóstico

  1. Execute a chamada de API a seguir para conferir todos os jobs de monetização programados no momento.

    /monetize/apis/get/triggers

  2. Verifica se a condição de notificação está presente e ativada para a notificação que não está funcionando. Se ela não estiver presente, prossiga para a etapa 3 para criar a condição de notificação e pular o restante das etapas.
    1. Se estiver presente, verifique se ele está ativado como verdadeiro. Caso contrário, execute a API Update a notificationcondition and action para atualizar a condição de notificação.

      OU

    2. Use a interface para atualizar a condição de notificação usando o processo fornecido no documento abaixo:

      IU de eventos

    3. Execute a chamada Create a notificationcondition and action API para criar a condição de notificação adequada e a ação correspondente.
      1. Depois que a condição de notificação for criada, execute a chamada da API de condições e ações de notificação de listas para verificar se a condição de notificação foi criada.
      2. Também é possível reprocessar a notificação usando a opção Reprocessar uma API de notificação.
    4. Esta etapa é aplicável apenas para usuários da nuvem privada. Se a condição de notificação estiver presente na etapa 1 e os e-mails de notificação ainda não estiverem chegando, verifique o registro /opt/apigee/var/log/edge-management-server/logs/system.log do servidor de gerenciamento e confira se a condição de notificação foi acionada.
      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. Se a condição de notificação for acionada e você ainda não estiver recebendo as notificações, prossiga para Precisa coletar informações de diagnóstico com as informações e os resultados das etapas acima.

Resolução

  1. Reprocessar a notificação usando a API Reprocess a notification.

É necessário coletar informações de diagnóstico

Se o problema persistir mesmo após seguir as instruções acima, entre em contato com o suporte do Apigee Edge e forneça as informações de diagnóstico a seguir.

Os usuários de nuvem pública e privada precisam fornecer as informações abaixo:

  1. Nome da organização
  2. Nome do ambiente
  3. Condição para notificações de monetização que não funcionou
  4. Detalhes sobre quais seções deste Manual foram testadas e quaisquer outros insights que nos ajudarão a agilizar a resolução deste problema.

Além das informações acima, os usuários da nuvem privada também precisam fornecer os seguintes dados:

  • Registro do servidor de gerenciamento

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