webgrind start remote_connect_back qcachegrind how debugger php profiling xdebug

php - start - ¿Puedo decir manualmente en xdebug profiler para comenzar a perfilar en un lugar específico?



xdebug header (2)

Como afirma Laith, no puede elegir cuándo desea que xDebug comience a crear perfiles y cuándo desea que se detenga. Pero, otra característica de xDebug ofrece este tipo de flexibilidad: rastreo.

La creación de perfiles y el seguimiento no son exactamente las mismas cosas, pero si termina aquí, es posible que el rastreo se ajuste a sus necesidades.

Para iniciar el rastreo, debe usar esta función: xdebug_start_trace()

Para detener el rastreo, debe usar esta función: xdebug_stop_trace()

Hay muchas configuraciones que puedes usar para cambiar el comportamiento de la traza:

http://xdebug.org/docs/execution_trace

Ya habilité el perfil xDebug en mi instalación XAMPP y funciona bien.

Ahora me gustaría preguntar si hay una manera de decir desde mi código fuente cuándo comenzar a perfilar con xDebug.

Más específicamente, me gustaría crear un plugin de WordPress, y me gustaría decir, comenzar a perfilar desde el punto de inicio del plugin y dejar de perfilar en el punto final del plugin.

¿Es eso posible?

Nota: Lo anterior es solo un ejemplo. Puede ser un complemento de CakePHP o una nueva clase de PHP que pueda necesitar para crear un perfil


Editar: ¿ Por Cómo activar / desactivar Xdebug Profiling en Runtime? no se puede habilitar / deshabilitar en tiempo de ejecución (por ejemplo, por llamada de función).

Puede habilitar de forma selectiva el generador de perfiles por solicitud, que generalmente es mejor. Para lograr este comportamiento, establezca esas configuraciones:

xdebug.profiler_enable_trigger=1 xdebug.profiler_enable=0

Tenga en cuenta que deshabilitamos el generador de perfiles y solo habilitamos el disparador. Desde su navegador pase XDEBUG_PROFILE = 1

http://example.com/file.php?XDEBUG_PROFILE=1

También puede pasar este parámetro en POST o COOKIE. Para más información verifique

  1. http://xdebug.org/docs/profiler#starting
  2. http://xdebug.org/docs/all_settings#profiler_enable_trigger