• EnglishEspañol日本語한국어Português
  • Inicia sesiónComenzar ahora

Te ofrecemos esta traducción automática para facilitar la lectura.

En caso de que haya discrepancias entre la versión en inglés y la versión traducida, se entiende que prevalece la versión en inglés. Visita esta página para obtener más información.

Crea una propuesta

Enfoques para el monitoreo de rendimiento .NET AWS Lambda Serverless

La visibilidad unificada de los comportamientos más detallados de su función Lambda .NET es esencial para que pueda comprender lo que sucede en su aplicación sin servidor. Esta información le permite solucionar problemas y optimizar sus funciones para que puedan funcionar más rápido y ofrecer resultados consistentes.

Puede elegir entre dos enfoques de instrumentación para obtener visibilidad de su función Lambda .NET:

Emplee los siguientes consejos para ayudarlo a decidir qué enfoque es mejor para usted.

Comparación de características

La siguiente tabla describe los diferentes requisitos y capacidades de cada enfoque:

Agente .NET New Relic

Distribución AWS para OpenTelemetry

Requiere cambios de código

No

Necesita herramienta para enviar datos.

No

New Relic experiencia UI

Sin servidor

OpenTelemetry

rastreo distribuido

Parcial

Métrica

No

Traza de la transaccion

N/A

Evento de transacción

Parcial

Evento de error/intervalos

Span evento o spans

SQL trazas

N/A

Perfilado de hilos

No

N/A

Gestión de vulnerabilidades

No

N/A

llamadas externas

Parcial

Instrumentación personalizada mediante XML

No

No

Instrumentación personalizada mediante API

Sí (agente)

Sí (OpenTelemetry)

Métrica personalizada

No

Evento personalizado

N/A

Tramos personalizados

Errores personalizados

No

Atributo personalizado

Logs

Rastreo multiaplicación heredado

No

No

Información

Logs-in-context será capturado por la extensión Lambda o CloudWatch, no por el agente de reenvío de log .

Agente .NET New Relic

A partir de la versión 10.26.0 del agente, el agente .NET New Relic admite la función Lambda instrumentada AWS. En la mayoría de los casos, el agente .NET instrumentará automáticamente su función Lambda AWS. El beneficio de emplear el agente es que, en la mayoría de los casos, no se requieren cambios de código para monitor su función Lambda.

En una función Lambda, el agente cambiará a un "modo sin servidor" que deshabilitará el envío de datos directamente a New Relic, así como también deshabilitará alguna otra característica. Para enviar datos a New Relic, debe emplear la extensión New Relic Lambda (incluida en nuestra capa de agente .NET) o CloudWatch.

Dado que el agente instrumentó automáticamente la mayoría de las funciones Lambda, puede emplear el paquete agente NuGet para monitor su función Lambda. Debe configurar manualmente las variables de entorno para el método de implementación elegido (consulte nuestra guía de instalación). Esto aún requiere que configure la extensión Lambda de New Relic o la integración de CloudWatch para enviar sus datos a New Relic.

La instrumentación automática está disponible para los siguientes tipos de funciones Lambda AWS (a partir de la versión del agente 10.29.0):

  • Amazon.Lambda.AspNetCoreServer.APIGatewayProxyFunction
  • Amazon.Lambda.AspNetCoreServer.APIGatewayHttpApiV2ProxyFunction
  • Amazon.Lambda.AspNetCoreServer.ApplicationLoadBalancerFunction

Limitaciones:

  • Los métodos lambda genéricos no se instrumentan automáticamente. Si su método lambda es un método genérico, como Task<TResponse> MyMethod<TRequest, TResponse>(TRequest, ILambdaContext), el agente .NET actualmente no puede implementar ese método.
  • Actualmente , Lambda Annotations Framework no es compatible.
  • Al evento ApiGatewayV2 le falta algún contexto requerido para el rastreo distribuido.
  • No se admite el rastreo saliente distribuido para diferentes llamadas del SDK AWS (como SQS).
  • Si su controlador de función Lambda no incluye un parámetro ILambdaContext , el agente .NET no podrá recopilar toda la información esperada sobre su función Lambda.
  • La función .NET Lambda creada con el método de implementación Native AOT no es compatible.

Importante

Complemento de marco sin servidor La compatibilidad con la función Lambda de .NET comienza en la versión 5.3.0 del complemento sin servidor. Si está ejecutando una versión del complemento sin servidor anterior a la v5.3.0, La actualización a v5.3.0 o posterior implementará automáticamente su función Lambda de .NET. Puede emplear la declaración de exclusión en su serverless.yml para excluir funciones de la instrumentación automática.

Distribución AWS para OpenTelemetry (ADOT) Soporte Lambda para .NET

La instrumentación OpenTelemetry Lambda para .NET proporciona extensión y API de seguimiento que puede emplear para instrumentar su función Lambda. ADOT está disponible como capa para facilitar su instalación. La capa ADOT Lambda proporciona una versión reducida del recolector AWS Distro for OpenTelemetry , que puede exportar datos OpenTelemetry a New Relic. En lugar de la UI experiencia de sin servidor, este enfoque empleará la OpenTelemetry UI.

Este método requiere alguna configuración manual inicial dependiendo de su método de implementación.

Para detalles de instalación, consulte trazar su función Lambda .NET con New Relic y OpenTelemetry.

Copyright © 2024 New Relic Inc.

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