Instalando Xdebug en Debian Lenny.
Saludos siguiendo en la tónica de las buenas prácticas de desarrollo esta vez les traigo un How To sobre Xdebug, esta es una herramienta que desde la encontré me ha sido de gran ayuda al momento de detectar cuellos de botellas y profiling en la aplicaciones que suelo desarrollar sean pequeñas o grandes (En PHP), como valor agregado que en lo personal encontrado en esta extensión es la posibilidad de entender estructura de algunos framework interesante (Tomates, Kumbia, Symfoni, otros), si alguna vez haz trabajado con FireBug sabras de lo que hablo.
Para la instalación de esta extensión lo haremos sencillo con PEAR/PECL entremos a una consola.
# pecl install xdebug
Una vez instalado este paquete vemos el infophp para verificar que la extensión se halla cargada correctamente.
Si esto se muestra todo anda bien, ahora falta configurar xdebug para que nos genere los archivos con la información del debugging y profiling, esta información que muestro fue tomada del blog de Jesus Lara donde aparte de hablar de la configuración de este archivo explica la herramienta.
NOTA: donde realizo un cambio es en donde se muestra la ruta donde se instalo xdebug.so.
Configurando xdebug
Para la activación de xdebug he creado un archivo (dentro del directorio conf.d de php5) llamado xdebug.ini que contendrá las instrucciones para activar la extensión y activar de una vez el profiling.
como root:
#touch /etc/php5/conf.d/xdebug.ini
luego, agregamos:
#vim /etc/php5/conf.d/xdebug.ini zend_extension_ts="/usr/lib/php5/20060613+lfs/xdebug.so" [xdebug] xdebug.profiler_enable=1 xdebug.profiler_output_dir=/tmp/php5/profiler
donde fíjense que la ruta es donde phpize envía mis extensiones (en este caso, xdebug.so)
Agrego adicionalmente una sección xdebug (se agradece mantener ordenado los archivos ini) y activar “profiler_enable” (1 lo activa, 0 lo desactiva) e indicar la ruta (especificada por profiler_output_dir) donde se ha de crear el archivo de profiling.
guardamos:
:wq!
y reiniciamos nuestro apache:
#/etc/init.d/apache2 restart
Ya con esto todo lo que ejecutemos de manera local nos genera un archivo con el debugging solo nos queda visualizar los estos archivos, pero antes debemos instalar Kcachegrinf, para hacer esto como es Debian :) ejecutamos.
#aptitude install kcachegrind
Listo ahora si buscamos los archivos en la ruta indicada en /tmp/php5/profiler
Falta instalar un paquete para que imágenes como esta se generen.
Este es el paquete particularmente en mis repositorios no estaban si quieren pueden hacer la prueba.
#aptitude search graphviz
Si encuentran algo excelente si no les dejo el enlace donde lo puede descargar y posterior instalar con:
#dpkg -i ruta_donde_guardo/graphviz_2.16.1-3_i386.deb
Con esto ya podemos comenzar visualizar las imágenes que se muestra arriba.







Abril 11, 2008 - 6:34 am
Buen post!