• /
  • EnglishEspañolFrançais日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

Caso haja alguma divergência entre a versão em inglês e a traduzida, a versão em inglês prevalece. Acesse esta página para mais informações.

Criar um problema

Novo monitoramento de Browser SPA

|View as Markdown (English)

Importante

Estamos implementando esse recurso em fases usando um sinalizador de recurso para substituir a experiência SPA do navegador existente por padrão. Não haverá a opção de escolher qual nova versão do SPA você receberá; você sempre receberá a versão mais recente automaticamente.

SPA (lançado no agente v1.298.0)

A consideração de tarefas longas foi introduzida para substituir o extenso rastreamento de retorno de chamada usado em aplicativos de página única (SPA) mais antigos. Ele também serve para preencher os atributos jsDuration, timeToSettle e timeToLastCallbackEnd do(s) evento(s) AjaxRequest associados a um BrowserInteraction.

Para determinados objetos nativos do navegador envolvidos pelo nrWrapper do agente, seu retorno de chamada será cronometrado. Tarefas com duração superior a 50ms (tarefas longas) podem estender uma BrowserInteraction. Isso seguiu uma heurística de navegação suave para determinar quando uma interação ocorria naturalmente. Agora, a interação também aguardará e estenderá sua duração até um período de 5 segundos sem tarefas longas, e seu horário de término será reajustado de acordo.

Anteriormente, uma solicitação Ajax associada à interação não relatava ou rastreava o tempo de retorno da chamada, resultando em valores nulos para os três atributos mencionados acima. Com a atualização atual, XMLHttpRequest (mas não fetch) que faz parte de uma interação e inclui ouvintes de eventos que causam tarefas longas terão os atributos jsDuration, timeToSettle e timeToLastCallbackEnd atualizados para refletir o tempo de retorno de chamada longo.

SPA (lançado no agente v1.253.0)

Para clientes de monitoramento de browser de página única (SPA), temos o prazer de anunciar uma reformulação da nossa funcionalidade de monitoramento de SPA, destinada a resolver vários pontos problemáticos:

  • Versões mais recentes inutilizáveis: conflitos frequentes com bibliotecas de terceiros e captura de interação não confiável afetavam o agente existente, muitas vezes tornando a versão mais recente inutilizável.
  • Soluções fragmentadas: resolver um problema com patches do SPA geralmente introduzia outro, criando um ciclo frustrante de correções e regressões.
  • Conflitos com bibliotecas de terceiros: o encapsulamento global, principalmente em torno de Promises, frequentemente interrompia a funcionalidade do código devido a conflitos com outras bibliotecas.
  • desempenho gargalo: Conflitos com código usando temporizadores, RAF e cadeia de promessas levaram a problemas de desempenho, variando de lentidão a travamentos.

A experiência de monitoramento do SPA atualizada foi projetada para eliminar esses problemas e fornecer uma experiência de monitoramento significativamente melhorada. As principais mudanças incluem:

  • Execução desembrulhada: ao não envolver globais principais, a nova experiência SPA libera aumentos de velocidade de execução para seu aplicativo.

  • Alinhado com a heurística de navegação suave: a nova experiência adota a navegação suave do Google Chrome, proporcionando rastreamento de interação mais preciso e alinhamento aprimorado com o comportamento do browser.

  • Determinação de interação simplificada: as interações agora são definidas como um evento de interface (clique/pressione a tecla/envie -> alteração de rota -> modificação DOM ), oferecendo uma abordagem de captura mais clara e eficiente.

    • Possível dissociação de eventos: você pode observar eventos AjaxRequest e JavascriptError previamente associados se dissociando da interação, refletindo o foco na interação orientada pela interface.
  • Foco na métrica principal: embora os dados relatados permaneçam praticamente inalterados, a nova experiência não rastreia mais a execução do JavaScript nem a duração do retorno de chamada dentro da interação, simplificando as informações relatadas.

  • Durações de interação reduzidas: espere durações de interação significativamente mais curtas, principalmente para mudanças de rota. Os carregamentos iniciais das páginas sofrerão uma ligeira redução.

  • Atualizações da API:

    • Novo argumento opcional .interaction({waitForEnd: true}) adicionado à função .interaction() : permite a personalização do horário de término da interação do usuário. A funcionalidade .interaction() existente permanece inalterada.
    • API obsoleta: A função createTracer: Embora ainda funcional, a função createTracer está obsoleta, pois não mantém mais a interação aberta ou retorno de chamada. Observação: se você continuar a usar createTracer com a nova experiência do SPA, o evento BrowserTiming não será criado.

Problemas conhecidos

  • Uso da API:

    • newrelic.interaction().end() Solução alternativa: se você usou isso anteriormente para resolver problemas de fechamento de interação, agora poderá ver interação extra e desnecessária. Revise seu uso para garantir resultados ideais.
    • createTracer() alteração de funcionalidade: createTracer() não mantém mais a interação aberta nem cronometra o retorno de chamada. Se você confiou nisso para rastrear código JavaScript, explore abordagens alternativas.
  • AjaxRequest associação:

    • Possível exclusão da interação: solicitações Ajax iniciadas perto do final da interação anterior agora podem ser excluídas devido à duração reduzida da interação.
    • Extensão manual: se você precisar que uma solicitação seja atribuída a uma interação específica, use o argumento .interaction({waitForEnd: true}) adicionado à função .interaction() para manter a interação aberta até que a solicitação seja disparada e, em seguida, .end() a interação. Isso associará a solicitação à interação.

Deixar feedback

Envie um problema no GitHub para relatar quaisquer bugs, solicitações de recursos ou melhorias de desempenho.

Para qualquer outro feedback, compartilhe suas ideias e sugestões enviando um e-mail para browser-agent@newrelic.com com um assunto começando com [SoftNav]: .

Copyright © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.