Instala la monitorización serverless para Azure Functions

Información general

En este Page ( página) se explica cómo recopilar trazas, métricas de trace (traza), métricas de tiempo de ejecución y métricas personalizadas de sus Azure Functions. Para recopilar métricas adicionales, instale la Datadog integración de Azure.

Configuración

  1. Instala dependencias. Ejecuta los siguientes comandos:

    npm install @datadog/serverless-compat
    npm install dd-trace
    

    Datadog recomienda anclar las versiones de paquete y actualizar periódicamente a las últimas versiones de @datadog/serverless-compat y de dd-trace para asegurarte de tener acceso a las mejoras y correcciones de errores.

  2. **Inicie la capa de compatibilidad sin servidor Datadog e inicialice el trazador Node.js Datadog **. Añade las siguientes líneas al archivo de punto de entrada de tu aplicación principal (por ejemplo, app.js):

    require('@datadog/serverless-compat').start();
    
    // This line must come before importing any instrumented module. 
    const tracer = require('dd-trace').init()
    
  3. Configurar el trazador Datadog Node.js

    Configuración de la biblioteca de seguimiento de Node.js

  1. Instala dependencias. Ejecuta los siguientes comandos:

    pip install datadog-serverless-compat
    pip install ddtrace
    

    Datadog recomienda utilizar las últimas versiones de datadog-serverless-compat y de ddtrace para asegurarte de tener acceso a las mejoras y correcciones de errores.

  2. Inicie Datadog Serverless Compatibility Layer e inicialice Datadog Python tracer. Añade las siguientes líneas al archivo de punto de entrada de tu aplicación principal:

    from datadog_serverless_compat import start
    import ddtrace.auto
    
    start()
    
  3. **Configurar el trazador Python Datadog **

    Configuración de la biblioteca de seguimiento de Python

  1. Instalar dependencias. Descarga los JAR de Datadog y despliégalos con tu función:

    wget -O dd-java-agent.jar 'https://dtdg.co/latest-java-tracer'
    wget -O dd-serverless-compat-java-agent.jar 'https://dtdg.co/latest-serverless-compat-java-agent'
    

    Ver Datadog’s Maven Repository para cualquier versión específica de Datadog Serverless Compatibility Layer.

    Datadog recomienda actualizar periódicamente las versiones más recientes de dd-serverless-compat-java-agent y dd-java-agent para garantizar el acceso a las mejoras y correcciones de errores.

  2. **Inicie la capa de compatibilidad sin servidor Datadog e inicialice el rastreador Java Datadog **. Añade los siguientes argumentos -javaagent a las opciones de la JVM.:

    -javaagent:/path/to/dd-serverless-compat-java-agent.jar -javaagent:/path/to/dd-java-agent.jar
    

    Nota: la variable de entorno para establecer las opciones de JVM depende del plan de alojamiento (por ejemplo, Consumo, Elastic Premium, Dedicado). Consulte Azure Functions Java developer guide para obtener más detalles sobre la variable de entorno adecuada para su plan de alojamiento.

  3. **Configurar el trazador Java Datadog **

    Configuración de la biblioteca de seguimiento de Java

  1. Instala dependencias. Ejecuta los siguientes comandos:

    dotnet package add Datadog.Azure.Functions
    

    Datadog recomienda actualizar periódicamente a la última versión de Datadog.AzureFunctions para asegurarse de tener acceso a las mejoras y correcciones de errores.

  2. **Inicie la capa de compatibilidad sin servidor Datadog **.

    Si su aplicación Azure Function utiliza el modelo Isolated Worker, añada las siguientes líneas a su archivo de punto de entrada de la aplicación principal:

    Datadog.Serverless.CompatibilityLayer.Start();
    

    Si su aplicación Azure Function utiliza el modelo In-Process, añada una referencia de paquete NuGet a Microsoft.Azure.Functions.Extensions:

    dotnet package add Microsoft.Azure.Functions.Extensions
    

    Y añade el siguiente archivo .cs a tu aplicación:

    using Datadog.Serverless;
    using Microsoft.Azure.Functions.Extensions.DependencyInjection;
    
    [assembly: FunctionsStartup(typeof(MyFunctionApp.Startup))]
    
    namespace MyFunctionApp
    {
       public class Startup : FunctionsStartup
       {
          public override void Configure(IFunctionsHostBuilder builder)
          {
                Datadog.Serverless.CompatibilityLayer.Start();
          }
       }
    }
    
  3. Configurar Instrumentación Automática

    Si su aplicación Azure Function se ejecuta en Windows, añada las siguientes variables de entorno a su aplicación Function:

    CORECLR_ENABLE_PROFILING=1
    
    CORECLR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
    
    CORECLR_PROFILER_PATH_64=
    C:\home\site\wwwroot\datadog\win-x64\Datadog.Trace.ClrProfiler.Native.dll
    
    CORECLR_PROFILER_PATH_32=
    C:\home\site\wwwroot\datadog\win-x86\Datadog.Trace.ClrProfiler.Native.dll
    
    DD_DOTNET_TRACER_HOME=C:\home\site\wwwroot\datadog
    

    Si su aplicación Azure Function se ejecuta en Linux, añada las siguientes variables de entorno a su aplicación Function:

    CORECLR_ENABLE_PROFILING=1
    
    CORECLR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
    
    CORECLR_PROFILER_PATH=
       /home/site/wwwroot/datadog/linux-x64/Datadog.Trace.ClrProfiler.Native.so
    
    DD_DOTNET_TRACER_HOME=/home/site/wwwroot/datadog
    
  4. Configurar el trazador Datadog.NET

  1. Despliega tu función.

  2. Configura Datadog Intake. Añade las siguientes variables de entorno a la configuración de la aplicación de tus funciones:

    NombreValor
    DD_API_KEYTu clave de API Datadog.
    DD_SITETu sitio Datadog. Por ejemplo, .
  3. Configure el etiquetado de servicios unificados. Puede recopilar métricas de sus funciones de Azure instalando la integración de Azure Datadog . Para correlacionar estas métricas con sus trazas, primero configure las etiquetas env, service, y version en su recurso en Azure. A continuación, configura las siguientes variables de entorno.

    NombreValor
    DD_ENVCómo quiere etiquetar su env para Unified Service Tagging. Por ejemplo, prod.
    DD_SERVICECómo desea etiquetar su servicio para Unified Service Tagging.
    DD_VERSIONCómo desea etiquetar su versión para Etiquetado de Servicio Unificado.

¿Qué toca hacer ahora?

Solucionar problemas

Activa logs de depuración

Puede recopilar registros de depuración para solucionar problemas. Para configurar los registros de depuración, utilice las siguientes variables de entorno:

DD_TRACE_DEBUG
Activa (true) o desactiva (false) el registro de depuración para la biblioteca de Datadog Tracing. El valor predeterminado es false.

Valores: true, false

DD_LOG_LEVEL
Configura el nivel de registro para la capa de compatibilidad serverless de Datadog. El valor predeterminado es info.

Valores: trace, debug, info, warn, error, critical, off