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

Esta é a documentação do Apigee Edge.
Acesse Documentação da Apigee X.
informações

Sintoma

As Notificações de monetização não estão funcionando e, por isso, os e-mails não estão sendo enviados aos usuários inscritos.

Mensagem de erro

Os e-mails sobre notificação 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 preços.
  2. Notifique desenvolvedores específicos sobre eventos como a publicação de um documento de faturamento ou quando uma porcentagem da meta de transações for alcançada (se eles compraram um plano de taxa de notificação ajustável).
  3. Notifique um provedor de API sobre eventos relacionados a desenvolvedores, como quando um desenvolvedor se registra em uma conta ou se inscreve em um plano de preços.
  4. Para mais detalhes sobre os tipos de notificação e como configurar esse recurso, acesse este link.

Pré-requisitos

Verifique se os seguintes pré-requisitos foram atendidos:

  1. Aceitação do plano de tarifação

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

    1. Novo plano de tarifação
    2. Plano de tarifas revisado
    3. Plano de tarifas expirado
    4. Plano de tarifação renovado
    5. Limitação de taxa excedida
    6. Plano de tarifa de freemium esgotado

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

  2. O Job Scheduler precisa ser executado para a notificação específica

    A monetização oferece um programador de jobs e um conjunto de jobs pré-agendados para execução em horários predefinidos. O programador de job 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 ver se o job programado de 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 a tarefa programada para a notificação específica já tiver sido executada e você ainda não estiver recebendo as notificações, vá para a seção Possíveis causas para resolver esse problema.
    3. Caso contrário, aguarde até que o job programado seja executado para a notificação específica.

Causas possíveis

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

Causa Descrição Instruções para solução de problemas aplicáveis
Configuração de SMTP incorreta A configuração do SMTP fornecida 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 nuvem privada no Edge

Causa 1: configuração 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 o servidor SMTP e as configurações do usuário estão corretos. Se essas configurações estiverem incorretas ou não tiverem sido definidas, prossiga para a Etapa 3. Se isso estiver correto, prossiga para a Etapa 4.
  3. Atualize o servidor SMTP e as configurações do 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 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 disparadas e o status de cada uma delas.
    2. Confira 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, ele vai mostrar o status "FALHA". para a notificação específica acima, Atualizar desenvolvedor.

  6. Isso pode ter acontecido porque o servidor SMTP e a porta podem não estar acessíveis no servidor de gerenciamento. Use o comando telnet para verificar se você consegue se conectar ao servidor SMTP especificado na porta especificada.
    telnet <SMTP-server-IP-address> <SMTP-Port#>
    

    Se você receber o erro "O tempo limite de conexão expirou" ou "Conexão recusada" para a saída telnet e, em seguida, siga para "Resolução".

Resolução

  1. Trabalhe com o administrador da rede para confirmar 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 o campo "Obrigatoriedade de informações de diagnóstico" com o

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

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

Diagnóstico

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

    /monetize/apis/get/triggers

  2. Verifique 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 pule o restante das etapas.
    1. Se estiver presente, verifique se está ativado como verdadeiro. Caso contrário, execute Atualizar uma condição de notificação e API de ação 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:

      interface de eventos

    3. Execute a chamada Criar uma condição de notificação e uma API de ação para criar a condição de notificação apropriada e a ação correspondente.
      1. Depois que a condição de notificação for criada, execute a chamada Listar condições de notificação e ações de API para verificar se ela foi criada.
      2. Você também pode processar a notificação novamente usando a opção Reprocessar uma API de notificação.
    4. Esta etapa só é aplicável a 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 veja 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 receber as notificações, acesse Precisa de informações de diagnóstico com as informações e a saída das etapas acima.

Resolução

  1. Reprocessar a notificação usando a opção Reprocessar uma notificação de API

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

Se o problema persistir mesmo depois de 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 privada e pública devem fornecer as informações abaixo:

  1. Nome da organização
  2. Nome do ambiente
  3. Condição da notificação 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 do problema.

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

  • Registro do servidor de gerenciamento

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