Solucionar problemas relacionados con la monitorización de AWS Lambda

Consulta las guías de solución de problemas adicionales para problemas comunes como un tamaño de código de función demasiado grande o la compatibilidad con webpack. Esta guía te ayuda a solucionar problemas generales de recopilación de telemetría.

Comprender los conceptos básicos

Para comprender mejor las instrucciones de esta guía, familiarízate primero con los conceptos clave. Una mejor comprensión de cómo funcionan las cosas te ayudará a identificar las piezas que faltan y a reducir las causas probables.

Utilizar la extensión Datadog Lambda en lugar del Forwarder

Si todavía utilizas la Función de Lambda del Datadog Forwarder para la recopilación de datos, considera la posibilidad de adoptar la Extensión Datadog Lambda en su lugar. Dado que las limitaciones técnicas de Lambda del Forwarder provocan una serie de problemas conocidos, migrar a la extensión de Lambda puede resolverlos automáticamente.

  • Si no sabes si tu función de Lambda utiliza la extensión, verifica las configuraciones de las capas de tu función de Lambda y comprueba si alguna capa de Lambda tiene el nombre Datadog-Extension.

  • Si no sabes si tu función de Lambda utiliza el Forwarder, verifica los filtros de suscripción del grupo de logs de tu función de Lambda y comprueba si el grupo de logs tiene una función de Lambda suscrita a Datadog Forwarder o algo con un nombre similar.

Consulta esta guía de comparación para comprender las ventajas de utilizar la extensión y esta guía de migración para ver los pasos de migración generales. ¡Prueba los cambios en un entorno de desarrollo o de prueba primero!

Para seguir utilizando el Forwarder, consulta esta guía de solución de problemas del Forwarder para obtener más ayuda.

Asegurarse de que las configuraciones están actualizadas y son las esperadas

Comprueba las guías de instalación con instrucciones actualizadas sobre las aplicaciones que quizás hayas configurado anteriormente para la monitorización de Datadog.

Para asegurarte de que los cambios reales realizados en tus funciones de Lambda son los esperados, prueba con definir otra función de prueba y configurarla siguiendo las instrucciones de la CLI de Datadog o Personalización. Compara los cambios (como el controlador, las capas, las variables de entorno y las etiquetas [tags]) efectuados en tus funciones de Lambda reales con la función de prueba.

Recopilar logs de depuración

Define la variable de entorno DD_LOG_LEVEL como debug en tus funciones de Lambda para habilitar los logs de depuración detallados. Si utilizas la Función de Lambda del Datadog Forwarder para el reenvío de datos de logs, define también DD_LOG_LEVEL como debug en la función de Lambda del Forwarder.

Si tienes problemas con el rastreo, define la variable de entorno DD_TRACE_DEBUG como true para obtener logs de depuración adicionales del rastreador de Datadog.

Para evitar costes innecesarios, deshabilita los logs de depuración después de recopilar suficientes datos.

Comprobar la integración de AWS

Datadog puede recopilar métricas y etiquetas de recursos de AWS a través de una integración con AWS (opcional). Si te faltan determinados métricas de CloudWatch y etiquetas de recursos de Lambda, asegúrate de que la integración de AWS esté correctamente configurada.

Asegúrese de que las etiquetas están configuradas

Si tienes problemas para aplicar las etiquetas estándar de Datadog service, env y version a los datos recopilados, asegúrate de que las variables de entorno DD_SERVICE, DD_ENV y DD_VERSION estén configuradas en tus funciones de Lambda. En el caso de las etiquetas personalizadas, asegúrate de que DD_TAGS esté configurada.

Si quieres enriquecer los datos recopilados con las etiquetas de recursos de AWS Lambda, asegúrate de que la Integración de Datadog para AWS esté correctamente configurada.

Obtener ayuda

Para hacer preguntas rápidas, publícalas en el canal #serverless de la Comunidad de Slack de Datadog.

Si seguiste todos los pasos anteriores para solucionar problemas y quieres obtener ayuda del Servicio de asistencia de Datadog, utiliza uno de los siguientes métodos para enviar la información de la configuración pertinente al servicio de asistencia.

  1. Crea un ticket de Zendesk.

  2. Descarga la última versión de la CLI de Datadog.

    npm install -g @datadog/datadog-ci
    
  3. Utiliza el comando Serverless Flare desde la raíz del directorio de tu proyecto para recopilar y enviar automáticamente los datos de tu función de Lambda al Servicio de asistencia de Datadog.

    datadog-ci lambda flare -f <function_arn> -e <email> -c <case_id> --with-logs
    
Para obtener más información sobre Serverless Flare, lee la documentación del comando.

Crea un ticket de Zendesk e incluye la siguiente información:

  1. Información básica sobre tu función de Lambda: ARN, tiempo de ejecución, controlador, capas, variables de entorno y etiquetas. Céntrate primero en una función si tienes el mismo problema con varias.
  2. Si la función de Lambda está configurada para enviar datos a través de logs con el Datadog Forwarder, incluye información básica sobre la función de Lambda del Forwarder. Asimismo, indica los filtros de suscripción configurados en el grupo de logs de tu función de Lambda.
  3. El método de instalación que usaste, como Serverless Framework o AWS CDK.
  4. El método de instalación alternativo que probaste, como la CLI de Datadog o Personalización.
  5. Los logs de depuración de tu propia función de Lambda.
  6. Los logs de depuración de la función de Lambda del Datadog Forwarder (si los utilizaste).
  7. Los archivos de configuración del proyecto, con los secretos cifrados redactados, como serverless.yaml, package.json, package-lock.json, yarn.lock, tsconfig.json y webpack.config.json.

Referencias adicionales