• 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

Instrumentação personalizada do Node.js

O New Relic para Node.js instrumenta automaticamente a maioria das solicitações padrão da web, mas às vezes você deseja instrumentação expandida. Com a API de instrumentação personalizada do agente, você pode criar instrumentação para estruturas da Web, armazenamentos de dados e clientes de serviço de mensagens que de outra forma não seriam suportados.

A API de instrumentação personalizada do agente Node.js também permite:

Requisitos de versão do agente

Os métodos de instrumentação personalizada neste documento estão disponíveis a partir do agente Node.js versão 2.0.0. Para obter informações sobre instrumentação usando a API de instrumentação personalizada v1.x, consulte a documentação da instrumentação personalizada herdada do Node.js.

Framework web não suportado por instrumento

Começando com o agente Node.js versão 2.0.0, A New Relic fornece uma API para expandir a instrumentação para estruturas web adicionais. Para obter mais informações, incluindo um tutorial, consulte a documentação da instrumentação da framework da web Node.js no GitHub.

Clientes de serviço de mensagens não suportados por instrumento

Começando com o agente Node.js versão 2.0.0, A New Relic fornece uma API para expandir a instrumentação para biblioteca adicional de serviços de mensagens. Para obter mais informações, incluindo um tutorial, consulte a documentação da instrumentação do cliente do serviço de mensagens Node.js no GitHub.

Armazenamentos de dados não suportados por instrumento

Começando com o agente Node.js versão 2.0.0, A New Relic fornece uma API para expandir a instrumentação para bibliotecas adicionais de armazenamento de dados. Para obter mais informações, incluindo um tutorial, consulte a documentação da instrumentação do armazenamento de dados Node.js no GitHub.

Instrumento de transação da web

Para criar uma transação personalizada da web, chame startWebTransaction para iniciar a transação. Para encerrar a transação, use qualquer uma destas opções:

Ending the transaction

Comments

Promessa

Se o manipulador passado para startWebTransaction retornar uma promessa, o agente encerrará a transação quando a promessa retornada for resolvida ou rejeitada.

Manual

Se você chamar getTransaction no contexto da nova transação, isso notificará o agente de que a transação será processada manualmente.

Se getTransaction for chamado no manipulador, você must encerrará a transação chamando transaction.end().

Síncrono

Se nenhuma dessas opções for atendida, a transação será encerrada quando o manipulador retornar de forma síncrona.

Antecedentes do instrumento de transação

Você pode usar transação personalizada para instrumento de transação fora da web (tarefas em segundo plano); por exemplo:

  • Trabalhos periódicos dentro do seu aplicativo
  • Trabalho que continua após a conclusão de uma solicitação

Para instrumentar tarefas em segundo plano, chame startBackgroundTransaction em seu manipulador para iniciar uma transação em segundo plano. Para encerrar a transação, use qualquer uma destas opções:

Ending the transaction

Comments

Promessa

Se o manipulador passado para startBackgroundTransaction retornar uma promessa, o agente encerrará a transação quando a promessa retornada for resolvida ou rejeitada.

Manual

Se você chamar getTransaction no contexto da nova transação, isso notificará o agente de que a transação será processada manualmente.

Se getTransaction for chamado no manipulador, você must encerrará a transação chamando transaction.end().

Síncrono

Se nenhuma dessas opções for atendida, a transação será encerrada quando o manipulador retornar de forma síncrona.

Expanda a instrumentação dentro da transação

Você pode criar instrumentação usando os métodos de registro de instrumentação na API. Escrever instrumentação usando a API de instrumentação permite especificar métricas e nomenclatura com mais detalhes por métodos de "monkey patching" (substituindo funções) em objetos relevantes. Outras opções podem oferecer visibilidade sobre transações da web que já estão instrumentadas, ou obter insights sobre banco de dados e outros trabalhos de transação que não são automaticamente instrumentados.

Para fazer isso, envolva seu retorno de chamada no rastreador personalizado. O rastreador personalizado cria e coleta métricas específicas para um segmento adicional dentro de uma transação existente, como uma função específica ou uma chamada de banco de dados.

  • Para instrumentar retornos de chamada individuais, chame startSegment() dentro do retorno de chamada e mova a lógica principal de retorno de chamada para a função handler .
  • Para instrumentalizar uma função que é chamada dentro de uma função assíncrona, envolva a função alvo e sua função assíncrona pai com startSegment().

Importante

Esses exemplos devem ser colocados no código que está sendo executado em uma transação. A origem da transação, personalizada ou criada automaticamente, não importa.

Copyright © 2024 New Relic Inc.

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