2009-12-06

Uso de herramientas de Logging y Profiling en Framework DooPHP

DooPHP viene con su propio generador de perfiles y de herramienta de registro de forma predeterminada. La clase que se ocupan de esto en el marco es DooLog (dooframework / app / registro / DooLog.php)

Existen algunos métodos en este archivo en el que puede utilizar para el perfil y la explotación forestal consulta o mensaje importante en su aplicación. Usted puede registrar un mensaje llamando a:

Doo::logger()->log('Something fishy here!', DooLog::Alert);

O puede utilizar los métodos de alias en lugar de pasar el nivel de registro:

Doo::logger()->alert('Something fishy here!');
Doo::logger()->emerg('message...');
Doo::logger()->crit('message...');
Doo::logger()->err('message...');
Doo::logger()->warn('message...');
Doo::logger()->notice('message...');
Doo::logger()->info('message...');
Doo::logger()->trace('message...');

Todos los mensajes de registro pueden ser organizados por categoría, simplemente pasa en otro parámetro al final de los métodos:

Doo::logger()->log('Something fishy here!', DooLog::ALERT, 'editpost');
Doo::logger()->emerg('message...', 'editpost');
Doo::logger()->alert('message...', 'editpost');

Para ver los mensajes registrados, sólo tiene que llamar showLogs (). Por DooLog defecto devolverá un registro perfectamente formato XML que puede ser filtrada por el nivel o categoría. Usted puede obtener un registro de texto sin formato si es necesario para:

//display all logs
echo Doo::logger()->showLogs();

//display plain text log
echo Doo::logger()->showLogs(false);

//display only logs in category editpost
echo Doo::logger()->showLogs(true, null, 'editpost');

//display only logs in level Alert and category editpost
echo Doo::logger()->showLogs(true, DooLog::ALERT, 'editpost');

Cuando tienes que escribir los mensajes de registro en el archivo, todo lo que tienes que hacer es llamar writeLogs (). Similar a showLogs (), se escribe la cadena XML en el archivo por defecto.

//Creates a log file log.xml
Doo::logger()->writeLogs();

//You can write as plain text
Doo::logger()->writeLogs('log.txt', false);

Usted puede escribir los registros de cierto nivel o categoría, así

Doo::logger()->writeLogs('log.xml', true, DooLog::ALERT, 'editpost');

Si usted está preocupado de que los archivos de registro se hacen más grandes con el tiempo, todo lo que tienes que hacer es especificar un tamaño de archivo para la rotación de registro. Cuando se alcanza este archivo, los registros serán automáticamente expulsado y los nuevos mensajes serán escritos.

//maximum log file size is 20kb

Doo::logger()->rotateFile(20);

Doo::logger()->writeLogs();

La clase Logger escribe el archivo en el que su aplicación se encuentra por defecto (SITE_PATH). Si desea cambiar el lugar donde los archivos de registro serán almacenados, sólo tiene que añadir la puesta en log_path common.conf.php:

//this will store log files at /var/logs/, eg. /var/logs/log.xml
$config['LOG_PATH'] = '/var/logs/';

Eso no es todo!Si usted ha pasado a través de la aplicación por defecto App, hay una ruta llamada de depuración que se parece a esto:Eso no es todo!Si usted ha pasado a través de la aplicación por defecto App, hay una ruta llamada de depuración que se parece a esto:

$route['*']['/debug/:filename'] = array('MainController', 'debug');

Esta ruta es para que usted pueda usar con la herramienta de visor de registro hecho en Flex (sí necesita Flash Player para ver este). El parámetro de nombre de archivo de ruta '' sería el nombre de su archivo de registro que se log.xml por defecto. Bien, ahora vamos a probarlo, estoy con la demo de blog como ejemplo y la dirección a la demo es http://localhost/amfdemo/blog/ (sí, habrá un amfphp DooPHP tutorial más adelante)

Todo lo que necesitas hacer es visitar http://localhost/amfdemo/blog/tools/logviewer.html. Sólo tienes que introducir la ruta de depurar el nombre del archivo de registro como la dirección (http://localhost/amfdemo/blog/debug/log) y esto es lo que van a recibir.

Log Viewer Tool

Con esta herramienta, usted puede fácilmente controlar su punto de vista de registro. Usted puede hacer la clasificación en la fecha y hora, el nivel de registro, la categoría, el acceso URI, el mensaje de su registro, así como algunos de filtrado.

Filtrar por categoría:

Filter by Category - log viewer

Filtrar por nivel de registro / tipo:

filter by log level/type - log viewer

Filtrar por URI:

filter by URI - log viwer

Puede filtrar con la combinación 3 también. Una cosa a tener en cuenta es cuando se utiliza el nivel de seguimiento de registro, sólo se registrará si el modo de depuración está en (DEBUG_ENABLED es cierto). Esto es bueno para las pruebas durante el desarrollo y puede simplemente desactivado el registro de seguimiento mediante el establecimiento de

$config['DEBUG_ENABLED'] = False;

Aquí descargar este blog registro demo, ya hay un log.xml en la carpeta blog de modo que usted puede tener un rápido vistazo a la herramienta Visor de registro. Los mensajes de registro no tiene ningún sentido ya que sólo para efectos de demostración :P

Eso es todo por la tala, al lado voy a explicar cómo hacer perfiles y perfiles de base de datos con DooPHP. Si desea más discusión, hay un hilo en este tutorial en el foro aquí.

No hay comentarios: