Requisitos

Para obtener un resumen de las versiones mínimas y recomendadas del tiempo de ejecución y del rastreador en todos los lenguajes, consulta Versiones de lenguaje y rastreadores compatibles.

Datadog Profiler requiere al menos PHP 7.1, en Linux de 64 bits.

Las compilaciones ZTS de PHP son compatibles desde la versión 0.99+ de dd-trace-php, mientras que las compilaciones de depuración de PHP no son compatibles.

Se requiere un sistema operativo con glibc 2.17 o posterior. Las siguientes versiones o posteriores cumplen este requisito:

  • CentOS 7.
  • Debian 8, que ha llegado al final de su vida útil (EOL).
  • Ubuntu 14.04, que es EOL.

Datadog recomienda utilizar una versión del sistema operativo que no sea EOL.

Se requiere la versión 3.13 o posterior de Alpine Linux, ya que el generador de perfiles está basado en musl v1.2.

Además, es necesario instalar libgcc_s con:

apk add libgcc

Las siguientes funciones de generación de perfiles están disponibles en las siguientes versiones mínimas de la biblioteca dd-trace-php:

FunciónVersión requerida de dd-trace-php
Hotspots de código0.71+
Perfiles de endpoint0.79.0+
Cronología0.98.0+ (fase beta desde 0.89.0+)

Continuous Profiler no es compatible con las plataformas serverless, como AWS Lambda.

Instalación

Para empezar a crear perfiles de aplicaciones:

  1. Asegúrate de que Datadog Agent v6+ está instalado y en funcionamiento. Datadog recomienda utilizar Datadog Agent v7+.

  2. Descarga el script datadog-setup.php de la página de versiones de GitHub. La versión 0.69.0 es la primera versión del rastreador que incluye este instalador.

  3. Ejecuta el instalador para instalar tanto el rastreador como el generador de perfiles, por ejemplo php datadog-setup.php --enable-profiling. Este script es interactivo y pregunta en cuál de las localizaciones de PHP detectadas debe instalarse. Al final del script, muestra la versión no interactiva de los argumentos del comando para su uso futuro.

  4. Configura el generador de perfiles utilizando el modo de configuración a través de la datadog-setup.php:

    # `datadog.profiling.enabled` is not required for v0.82.0+.
    php datadog-setup.php config set -d datadog.profiling.enabled=1
    
    php datadog-setup.php config set \
      -d datadog.service=app-name \
      -d datadog.env=prod \
      -d datadog.version=1.3.2
    
    php hello.php
    

    Apache, PHP-FPM y otros servidores requieren un reinicio después de cambiar los ajustes de INI.

    Consulta los documentos de configuración para más ajustes INI.

  5. Uno o dos minutos después de recibir una solicitud, los perfiles aparecen en la página APM > Generador de perfiles.

¿No sabes qué hacer a continuación?

La guía Empezando con el generador de perfiles toma un ejemplo de servicio con un problema de rendimiento y te muestra cómo utilizar Continuous Profiler para comprender y solucionar el problema.

Referencias adicionales