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

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

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Criar um problema

Compatibilidade e requisitos para monitoramento de Browser

Nosso inclui medidas de segurança rigorosas para fornecer um produto robusto e independente com monitoramento de recursos do browser. Antes de instalar o agente browser, certifique-se de que seu sistema atenda a esses requisitos.

Requisitos básicos

Para reportar dados à New Relic, seu aplicativo deve atender a dois requisitos básicos:

  1. O tráfego para o aplicativo deve ser proveniente de clientes capazes de carregar e executar o código JavaScript do browser.
  2. Os clientes que acessam o aplicativo devem ser capazes de enviar dados para a New Relic por meio de solicitações HTTP. HTTPS é necessário para o monitoramento mais avançado do recurso do browser.

A maioria dos aplicativos de browser típicos atendem a esses requisitos, mas alguns aplicativos de browser em ambientes restritos podem ter dificuldade em relatar dados à New Relic. Por exemplo:

  • Aplicativo mobile híbrido
  • Aplicativo instalado em hardware incomum, como terminais de ponto de venda ou dispositivos de consumo

Para obter mais informações, revise a documentação da instrumentação para monitoramento do browser e, em seguida, verifique o acesso à rede do usuário final.

Browser compatível

O browser agente suporta oficialmente as seguintes versões de browser:

Instrumentação e recurso específico podem ser compatíveis com outros browsers ou versões.

Exceptions

Comments

Tempos de pintura

O atributo firstPaint e firstContentfulPaint no evento BrowserInteraction, PageView e PageViewTiming só são compatíveis com:

  • Chrome 60 ou superior para desktop e dispositivos móveis (Android webview e Chrome para Android)
  • Opera 47 ou superior para desktop
  • Opera 44 ou superior para celular Android
  • Internet Samsung para celular

AJAX

Os recursos de temporização AJAX não estão disponíveis com:

  • Chrome para iPhone e iPad
  • Ou seja, 7 e 8

PageAction eventos

PageAction pode exigir um browser que suporte totalmente cross-domínio XMLHttpRequests. O Internet Explorer versões 9 e anteriores não podem registrar o evento PageAction . Saiba mais sobre como consultar seus dados.

Rastreamento da sessão

trace da sessão são reportados somente a partir de browsers que suportam a Especificação de Tempo de Recursos.

SHA-256

A New Relic só pode monitor browsers compatíveis com SHA-256.

Importante

Quando você usa monitoramento de browser com cookies, os cookies da New Relic são cookies de terceiros em seu site e podem não armazenar ou funcionar em determinados browsers usados por seus visitantes. Consulte os sites do browser aplicável para obter detalhes sobre sua compatibilidade com cookies de terceiros.

Agentes APM

Uma forma de implantar o monitoramento de Browser para uma aplicação é utilizando um de nossos agentes APM.

Se você estiver implantando browser para um aplicativo que já está sendo monitorado pelo APM, certifique-se de que a versão do seu agente APM suporta monitoramento de browser:

  • Ir: Versão 2.5.0 ou superior
  • Java: Versão 3.4.0 ou mais alto
  • .NET: Versão 2.20.25.0 ou superior
  • Node.js: versão 1.4.0 ou superior
  • PHP: Versão 4.4.5.35 ou superior
  • Python: Versão 2.10.1.9 ou mais alto
  • Ruby: Versão 3.7.0.177 ou superior

Estrutura e biblioteca suportadas

O agente browser coleta dados em sites que usam muitas bibliotecas e estruturas de front-end populares. O agente browser monitora objetos e métodos JavaScript de baixo nível, que podem ser agrupados ou modificados por outra biblioteca e framework. Como resultado, o nível de detalhe coletado pode variar de uma framework para outra, e podem ocorrer conflitos com qualquer biblioteca que modifique a mecânica nativa do JavaScript.

Exceções de compatibilidade

Comentários

Zone.js

Se você estiver usando AngularJS e quiser usar nosso recurso de monitoramento SPA, observe que as versões 0.6.18 a 0.6.24 do Zone.js não são compatíveis com o browser. Em todos os casos, o agente browser must deve ser carregado antes do Zone.js para evitar erros.

Cypress.io

O browser não consegue instrumentar adequadamente os métodos open e send de solicitações quando os testes são executados no Cypress. Isso fará com que o seguinte erro seja gerado:

Cannot set property 'status' of undefined

Isso afetará apenas os clientes que executam testes com o browser agente presente em seu código. O aplicativo de produção não deve ser afetado.

html2pdf.js

Esta biblioteca não é compatível com nosso agente Pro+SPA devido à forma como esta biblioteca envolve promessas. Se você estiver usando esta biblioteca, recomendamos selecionar o tipo de agente Pro.

MooTools

O browser agente não é compatível com versões do MooTools anteriores a 1.6.0 ou com qualquer versão que inclua a camada de compatibilidade do MooTools. Caso migrar do MooTools não seja uma opção, recomendamos usar a versão 1.6.0-nocompat.

Monitoramento de aplicativo de página única (SPA)

Para usar o recurso relacionado ao monitoramento de aplicativos de página única (SPA), seu aplicativo deve atender a estes requisitos.

SPA: versão do agente browser

O monitoramento do SPA requer uma versão específica do SPA do trecho do browser, disponível para o agente do browser versão 885 ou superior. Esta versão do agente está habilitada por padrão.

SPA: tipos de browser

O monitoramento do SPA requer a API do BrowseraddEventListener e a API Navigation Timing. Ambas API estão disponíveis em todos os browsers modernos, incluindo Google Chrome, Mozilla Firefox, Apple Safari e Microsoft Internet Explorer (IE) versões 9 ou superior.

SPA: requisitos framework

Como a instrumentação SPA funciona agrupando API do browser de baixo nível, ela é independente framework . A instrumentação SPA é compatível com a maioria das estruturas SPA, como Angular, Backbone, Ember e React. Também pode instrumentar solicitações feitas usando JSONP.

Abaixo estão os problemas de compatibilidade conhecidos:

  • Se seu aplicativo usa AngularJS e você deseja usar os recursos de monitoramento SPA do browser, as versões 0.6.18-0.6.24 do Zone.js não são compatíveis com o agente SPA.
  • A biblioteca html2pdf.js não é compatível com o agente SPA.
  • As versões Angular 12 a 14 contêm uma limitação em torno do tamanho dos elementos de script individuais contidos na fonte HTML do índice. Consulte esta página de resolução de problemas para obter mais informações.
  • Next.JS tem uma incompatibilidade conhecida desde a versão 13.3.2-canary.2 onde o uso do roteador do aplicativo pode fazer com que os links da página não funcionem. Consulte esta página de resolução de problemas para obter mais informações.

SPA: Segurança para aplicar fragmentos de hash

Coletamos e salvamos fragmentos de hash aplicados de URLs de mudança de rota. Se você usar aplicar hash para passar dados privados ou confidenciais, esses dados poderão ficar visíveis para o usuário da sua conta New Relic. Siga as diretrizes de segurança do browser com coleta de dados e relatórios.

Considerações sobre a Política de Segurança de Conteúdo (CSP)

Para obter métricas precisas de desempenho do browser, nosso monitoramento de browser requer o uso de um pequeno trecho JavaScript embutido. A New Relic analisa cuidadosamente o JavaScript embutido para evitar scripts entre sites (XSS) e outras vulnerabilidades potenciais.

A Política de Segurança de Conteúdo Nível 2 adiciona restrições aos tipos de JavaScript permitidos, como script embutido. Também limita qual domínio pode carregar script durante o carregamento da página.

Importante

Se o seu site não permitir a execução de JavaScript hospedado por terceiros, você deverá solicitar uma exceção CSP por meio dos procedimentos padrão da sua organização para instalar o agente de monitoramento do browser.

Ao solicitar uma exceção de CSP, siga os procedimentos padrão da sua organização para entrar em contato com a equipe da Web ou de segurança. As exceções de CSP para seu caso de uso dependem da versão do agente browser que você está executando atualmente. Recomendamos sempre atualizar para a versão mais recente do agente browser.

Você pode adicionar todas essas exceções à diretiva substituta default-src (em vez de script-src e connect-src). O agente browser requer as seguintes exceções de CSP:

Exceção CSP

Comentários

unsafe-inline

Adicione à diretiva script-src ou à diretiva substituta default-src . Isso é necessário porque o agente é instalado incluindo um script sequencial.

https://js-agent.newrelic.com

Adicione à diretiva script-src ou à diretiva substituta default-src . É aqui que os arquivos de script adicionais exigidos pelo agente são hospedados.

*.nr-data.net

O agente tenta enviar carga para subdomínios de nr-data.net, o que pode variar de acordo com o tipo de conta. Se *.nr-data.net for muito inclusivo para seus requisitos, cada subdomínio individual precisará ser adicionado:

  • Contas baseadas nos EUA:

    • https://bam.nr-data.net
    • https://bam-cell.nr-data.net
  • Contas baseadas na UE:

    • https://bam.eu01.nr-data.net
  • Contas compatíveis com FedRAMP:

    • https://gov-bam.nr-data.net
  • Adicione à diretiva connect-src ou à diretiva substituta default-src . A diretiva connect-src afeta os URLs que o script pode chamar (por exemplo, usando a interface XMLHttpRequest). Se você tiver restrições de CSP especificamente em torno desta diretiva, adicione este URL como uma exceção.

nonce apoiar

A partir do agente browser 1.247.0, o agente respeitará um atributo nonce anexado ao script embutido ao carregar blocos de código adicionais. Se o seu site ou infraestrutura for capaz de injetar um atributo nonce no script do agente browser embutido, você só precisará solicitar uma exceção CSP para connect-src.

Importante

Nosso suporte integrado nonce não se aplica ao uso do pacote npm do browser agente. Com o pacote npm, o agente passa a fazer parte do código do seu site ou aplicativo. Quaisquer blocos adicionais carregados serão feitos por meio do código do seu aplicativo e você terá controle total sobre quando e se um atributo nonce será usado.

Alguns APM de agente capazes de injetar o agente browser também suportam a adição de um atributo nonce ao script injetado.

Agente APM

Versão mínima

Nota de suporte

Go

2.5.0

Oferece suporte à injeção do trecho JavaScript por meio da API Transaction.BrowserTimingHeader . Você precisará escrever código adicional para modificar o elemento de script para adicionar o atributo nonce . Consulte Adicionar monitoramento de browser para aplicativos Go.

Java

7.6.0

Suporta adição de nonce por meio da API getBrowserTimingHeader e getBrowserTimingFooter . Consulte a documentação do monitoramento do agente browser Java.

.NET

8.39.0.0

Suporta adição nonce por meio da API GetBrowserTimingHeader . Consulte a documentação do monitoramento do agente browser .NET.

Node.js

4.3.0

Suporta adição nonce por meio da API getBrowserTimingHeader . Consulte a documentação do agente Node.js sobre monitoramento do browser.

Ruby

7.1.0

Suporta adição nonce por meio da API browser_timing_header . Veja a documentação do agente Ruby sobre monitoramento do browser.

Suporte de proxy

Importante

Este recurso está disponível atualmente para aqueles que usam os métodos de instalação do browser copiar/colar ou npm. Atualmente não há opções de interface ou configuração do NerdGraph disponíveis. Continuamos trabalhando para melhorar o acesso a essas e outras opções de configuração.

A partir do agente browser 1.240.0, o agente pode ser configurado para fazer proxy de solicitações de rede por meio de outra combinação de domínio e caminho que você controla. Dependendo da configuração do proxy e das configurações do CSP, talvez você não precise solicitar exceções para adicionar domínios New Relic a script-src e connect-src. Confira nossos documentos sobre proxy para obter mais informações, incluindo um guia sobre como configurar o agente.

Integridade de Sub-Recursos (SRI)

O browser agente utiliza divisão de código para tornar o snippet de código embutido o menor possível. O código adicional necessário para o agente funcionar é carregado em tempo de execução de nossa rede de entrega de conteúdo (CDN). Como uma camada adicional de segurança, começando com o agente browser 1.247.0, o trecho do agente contém aplicar hash de todos os pedaços de código adicionais que podem ser carregados durante o tempo de execução. Esses hash aplicados são usados pelo browser para verificar se o código carregado do CDN não foi modificado acidentalmente, seja no CDN ou durante o trânsito por meio de um ataque man-in-the-middle.

Importante

SRI aplicar hash não se aplica ao uso do pacote npm do browser agente. Com o pacote npm, o agente passa a fazer parte do código do seu site ou aplicativo, tornando inválido o hash aplicar gerado.

Para obter mais informações sobre como funciona a segurança SRI, consulte este artigo do MDN.

Copyright © 2024 New Relic Inc.

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