Configura Stackdriver Debugger para PHP

En esta página, se describe cómo configurar el entorno y la aplicación de PHP para usar Stackdriver Debugger. Para algunos entornos, debes especificar de forma explícita el nivel de acceso a fin de permitir que el agente de Stackdriver Debugger envíe datos. Recomendamos configurar el nivel de acceso más amplio posible y, luego, usar Cloud Identity and Access Management para restringir el acceso. De acuerdo con esta práctica recomendada, debes configurar el nivel de acceso para que estén todas las API de Cloud con la opción cloud-platform.

Antes de comenzar

Para comenzar a usar Debugger, asegúrate de que la API de Debugger esté habilitada.
Habilita la API de Debugger

Entorno estándar de App Engine

El agente Stackdriver Debugger para PHP todavía no es compatible con el entorno estándar de App Engine.

Entorno flexible de App Engine

  1. Instala la extensión stackdriver_debugger desde PECL:

    pecl install stackdriver_debugger-alpha
    

    Si luego de ejecutar este paso el archivo php.ini no incluye extension=stackdriver_debugger.so, agrégala de forma manual.

  2. Agrega el paquete de Debugger para PHP de Google Cloud a tu archivo composer.json:

    composer require google/cloud-debugger
    
  3. Agrega la extensión de Stackdriver Debugger para PHP a través del archivo composer.json:

    composer require ext-stackdriver_debugger:*
    
  4. Habilita las integraciones de Stackdriver en tu archivo app.yaml:

    runtime_config:
      enable_stackdriver_integration: true
    
  5. Habilita el agente.

    Agrega el siguiente código a la app lo antes posible en la solicitud:

    use Google\Cloud\Debugger\Agent;
    
    $agent = new Agent(['sourceRoot' => realpath('/app')]);
    

Ahora puedes usar Debugger con tu app.

Google Kubernetes Engine

GCLOUD

Para habilitar Debugger con gcloud, completa los siguientes pasos:

  1. Crea tu clúster con uno de los niveles de acceso siguientes:

    • https://www.googleapis.com/auth/cloud-platform otorga a tu clúster acceso a todas las API de Google Cloud.

    • https://www.googleapis.com/auth/cloud_debugger otorga a tu clúster acceso solo a la API de Debugger. Usa este nivel de acceso para fortalecer la seguridad de tu clúster.

    gcloud container clusters create example-cluster-name \
           --scopes=https://www.googleapis.com/auth/cloud_debugger
    
  2. Instala la extensión de Stackdriver Debugger para PHP en tu contenedor. Si tiene instalado PECL, esto se puede hacer si agregas la línea siguiente a tu Dockerfile:

    RUN pecl install stackdriver_debugger_alpha
    
  3. Agrega el paquete de Debugger a tu aplicación mediante la ejecución del comando siguiente en tu aplicación:

    composer require google/cloud-debugger
    
  4. Agrega la línea siguiente a tu Dockerfile a fin de configurar un daemon para ejecutar el proceso de daemon de Debugger:

    RUN php /[YOUR-APP-PATH]/vendor/bin/google-cloud-debugger -s /[YOUR-APP-PATH]
    
  5. Agrega las líneas siguientes del código a tu app lo antes posible en la solicitud para habilitar el agente de Debugger:

    use Google\Cloud\Debugger\Agent;
    
    $agent = new Agent(['sourceRoot' => realpath('/[YOUR-APP-PATH]')]);
    

Ahora puedes usar el depurador cuando implementes tu app en contenedores.

CONSOLE

Para habilitar Debugger con la consola, completa los pasos siguientes:

  1. Después de seleccionar tu tipo de clúster, haz clic en Más opciones en el panel de Grupos de nodos:

    Campo de grupo de nodos que muestra el botón Más opciones encerrado en un rectángulo rojo.

  2. Selecciona una de las opciones siguientes del panel de Seguridad:

    • Permitir el acceso total a todas las API de Cloud

    • Permitir el acceso a cada API y, luego, seleccionar Habilitada para el Depurador de Cloud

Compute Engine

  1. Asegúrate de que tus instancias de Compute Engine se creen con la opción de nivel de acceso Permitir el acceso total a todas las API de Cloud, o que tengan uno de los siguientes niveles de acceso:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloud_debugger
  2. Instala la extensión stackdriver_debugger desde PECL (si usas contenedores, instálala en la imagen):

    pecl install stackdriver_debugger-alpha
    
  3. Agrega el paquete de Debugger para PHP de Google Cloud a tu archivo composer.json:

    composer require google/cloud-debugger
    
  4. Configura un daemon para que ejecute el proceso de daemon de Debugger:

    php /[YOUR-APP-PATH]/vendor/bin/google-cloud-debugger -s /[YOUR-APP-PATH]
    
  5. Habilita el agente.

    Agrega el siguiente código a la app lo antes posible en la solicitud:

    use Google\Cloud\Debugger\Agent;
    
    $agent = new Agent(['sourceRoot' => realpath('/[YOUR-APP-PATH]')]);
    

Ahora puedes usar Debugger con tu app.

En el entorno local y en otros lugares

  1. Instala la extensión stackdriver_debugger desde PECL:

    pecl install stackdriver_debugger-alpha
    
  2. Agrega el paquete de Debugger para PHP de Google Cloud a tu archivo composer.json:

    composer require google/cloud-debugger
    
  3. Ejecuta el proceso de daemon de Stackdriver Debugger:

    php /[YOUR-APP-PATH]/vendor/bin/google-cloud-debugger -s /[YOUR-APP-PATH]
    
  4. Habilita el agente.

    Agrega el siguiente código a la app lo antes posible en la solicitud:

    use Google\Cloud\Debugger\Agent;
    
    $agent = new Agent(['sourceRoot' => realpath('/[YOUR-APP-PATH]')]);
    

Ahora puedes usar Debugger con tu app.

En la página de Depuración en Cloud Console, se pueden mostrar los archivos de origen local, sin subir, para el desarrollo local. Consulta Selecciona el código fuente de forma manual.

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Stackdriver Debugger