Problema
Você não está vendo dados AJAX do seu aplicativo de browser.
Solução
Se seu aplicativo estiver instrumentado com e estiver coletando dados corretamente para outros recursos Pro, siga estas etapas:
Verifique se a página está instrumentada
Se você estiver usando XMLHttpRequest, use o console de desenvolvimento do seu browser para verificar se a página foi corretamente instrumentada. Digite XMLHttpRequest
e/ou fetch
no console. Se a instrumentação falhar, você verá algo como:
// XMLHttpRequestƒ XMLHttpRequest() { [native code] }
Se você vir algo mais, a verificação foi bem-sucedida.
Verifique se a instrumentação AJAX está habilitada
A instrumentação AJAX não está incluída no agente lite.
Para verificar a instrumentação AJAX:
Abra a ferramenta de desenvolvimento do console do seu browser e verifique o objeto
newrelic.initializedAgents
. Este objeto contém uma entrada para cada agente em execução na página. Normalmente, há apenas um agente em uma página.Inspecione o objeto do agente inicializado para um objeto
runtime
. Este objeto contém informações sobre o agente em execução, comoloaderType
. SeloaderType
forlite
, a instrumentação AJAX não será incluída no agente que está sendo usado.Se
loaderType
não forlite
, você também pode verificar o agente inicializado para objetosconfig
efeatures
.- O objeto
config
conterá a configuração de tempo de execução do agente, incluindo um objetoajax
com um booleanoenabled
. - O objeto
features
deve conter uma entrada para cada recurso inicializado pelo agente, incluindo uma entradaajax
.
- O objeto
Verifique se este objeto AJAX contém um booleano
enabled
detrue
e uma entradafeatAggregate
.Se algum desses itens não for verdadeiro, a instrumentação AJAX pode não ter sido inicializada devido a uma alteração de configuração no New Relic na entidade do browser ou possivelmente uma alteração manual no objeto
NREUM.init
que foi copiado e colado no HTML.Importante
newrelic.initializedAgents
é a propriedade aceita para verificar a existência do agente em uma página, a menos que você esteja usando uma versão antiga ou sem suporte do agente.
Verifique a configuração da lista de negação
O agente pode ser configurado para ignorar determinados domínios e caminhos ao criar o evento AjaxRequest.
Use o console de desenvolvimento do seu browser para verificar as regras atuais da lista de negações AJAX executando newrelic.init
. Procure uma propriedade ajax
contendo uma matriz chamada deny_list
.
Se você vir entradas na lista de negações que não são familiares ou que fazem com que as chamadas AJAX sejam filtradas, revise a documentação do evento Filtrar AjaxRequest para obter mais orientações.
Verificar acesso à rede
Se o objeto estiver corretamente instrumentado, tente disparar uma chamada AJAX no seu aplicativo enquanto monitora o tráfego de rede nas ferramentas de desenvolvimento do browser. Aguarde até um minuto e procure uma chamada para bam.nr-data.net/jserrors
com um parâmetro xhr
. Se a chamada falhar, verifique se há problemas de rede. Como alternativa, procure uma solicitação para bam.nr-data.net/events
com uma carga útil que comece com bel.7;2
.
Se você não vir esta chamada, se ela falhar com um erro não relacionado ao acesso à rede, ou se for bem-sucedida, mas você ainda não estiver vendo os dados, continue na documentação de resolução de problemas.
Revise como JSONP afeta solicitações
Se suas solicitações usarem JSONP, elas não aparecerão na página da interface do usuário do AJAX.
No entanto, você pode visualizá-los como ativos dentro do trace da sessão.
Se estiver usando o monitoramento SPA, você poderá visualizá-los na guia AJAX da página Page views .
Requisitos para JSONP ser reconhecido:
- Cada solicitação JSONP deve usar uma função de retorno de chamada exclusiva. A biblioteca mais popular (como jQuery) gera uma função de retorno de chamada exclusiva dinamicamente para cada solicitação.
- A string de consulta que contém o nome da função de retorno de chamada deve ser nomeada
"callback"
ou"cb"
para ser reconhecida pelo New Relic. Este é o comportamento padrão na biblioteca mais popular.
Dica
Se alguma dessas etapas de resolução de problemas falhar ou você ainda estiver tendo problemas com dados AJAX ausentes, obtenha suporte em support.newrelic.com.