O agente browser da New Relic permite que você supervisione a eficiência, os problemas e a interação do usuário do seu aplicativo na web ou site. Ele captura informações sobre a duração de carregamento da página da web, solicitações Ajax, erros de JavaScript e eventos personalizados, transmitindo esses dados para a New Relic para uma examinação completa e representação visual. E se você quiser capturar dados brutos de log que o seu aplicativo da web emite para um processo mais completo de resolução de bugs? O agente browser agora tem uma solução para isso em forma de dois métodos de API para capturar manualmente os logs do navegador emitidos pelos seus aplicativos da web.

Por que capturar logs do navegador?

Capturar logs do navegador oferece inúmeras vantagens, incluindo:

  • Ajudar a encontrar erros ou inconsistências que não são mostradas com o monitoramento de erros tradicional.
  • Obter mensagens de log detalhadas para dividir processos ou transações com granularidade mais refinada.
  • Obter insights dos comportamentos dos usuários, respostas de ações específicas ou problemas de renderização.
  • Organizar e fazer triagem dos logs de forma fácil nos buckets gerenciáveis com base no nível, tipo, página etc.

Instalar e configurar

Se quiser usar o agente browser da New Relic para capturar manualmente os logs do navegador, você precisará seguir alguns passos para instalar e configurá-lo adequadamente. Aqui está um guia de como fazer isso.

  1. Abra a New Relic e selecione Adicionar dados no painel de navegação.
  2. Selecione Navegador e dispositivos móveis e selecione a fonte de dados de monitoramento de browser.
  3. Escolha seu método de implantação, seja APM ou Copiar/Colar.
  4. Selecione um aplicativo existente monitorado no APM ou nomeie seu aplicativo e então clique em Ativar.

Você também pode usar o pacote NPM do agente browser para instrumentar sua página na web. Para mais informações sobre o processo, consulte esse guia de instrumentação. A captura manual dos logs do navegador é compatível com as versões do agente browser 1.261.0 e superior.

Capturar os logs do navegador

Capturar dados manualmente como um evento de log único

Se você quiser capturar os dados de log por caso, a API de "log" captura uma mensagem como um evento de log, enquanto oferece a flexibilidade de aprimorar o evento com um nível específico e atributos personalizados. Essa API tem uma variedade de casos de uso, desde de registrar mensagens individuais até ampliar suas plataformas de log existentes.

/// Capture um evento de log único
newrelic.log('my log message', {level: 'debug'})
/// Adicione uma chamada de log à função dos seus mecanismos de log existentes
yourExistingLoggerFn(message){
  // capture sua mensagem
newrelic.log(message, {level: 'debug'})
  // ... sua outra lógica ...
}

Capturar um evento de log único é tão simples quanto uma chamada “newrelic.log(<message>, <options>)” com uma mensagem do tipo string e um objeto opcional especificando um nível de log ou atributos personalizados. Consulte a documentação da API para informações mais detalhadas sobre o uso dessa API.

Capturar automaticamente os dados passando pelos métodos existentes de log do navegador como eventos de log

Se você já tem soluções de log incorporadas no seu aplicativo da web e quer capturar dados de log todas as vezes que esses métodos de log são executados, a API “wrapLogger” instrumentará seus métodos para capturar um evento de log em cada chamada, enquanto oferece flexibilidade para aprimorar o evento com um nível especificado e atributos personalizados. Essa API permite que você capture logs por todo o ecossistema do seu aplicativo com relativamente pouco esforço, simplificando o processo ao envolver seus métodos já em uso ou os agentes do navegador nativo, como o console.info.

Capturar itens de log de método(s) de console nativo(s)

newrelic.wrapLogger(console, 'info')
// deste ponto em diante, toda vez que 'console.info' for executado, ele salvará um evento de log

Capturar itens de log de um agente personalizado

const myLoggers = {
 logger: function(){...}
}
newrelic.wrapLogger(myLoggers, 'logger')
// deste ponto em diante, toda vez que 'myLoggers.logger' for executado, ele salvará um evento de log

Capturar todas as mensagens como eventos de log é tão simples quanto chamar “newrelic.wrapLogger(<parentObject>, <functionName>, <options>)” com um objeto contendo um método a ser envolvido e um objeto opcional especificando um nível de log ou atributos personalizados. Consulte a documentação da API para informações mais detalhadas sobre o uso dessa API.

Visualizar os logs do navegador

Você pode visualizar, organizar e personalizar seus logs do navegador capturados na visualização de log do aplicativo do seu navegador. Primeiro, encontre o aplicativo do navegador e então selecione "Logs' no painel lateral. 

 

Aqui você pode personalizar as colunas, os filtros, entre outros, para ajudar a detalhar o problema em questão. Para mais informações sobre visualização de logs, consulte a documentação de interface de logs.

logs_view