ZLog
versión 1.1
Introducción
ZLog ("zetalog") es un sencillo sistema de log para Flash 100% compatible con MTASC y el IDE. ZLog consta de 2 partes:
- La consola. Es una una página HTML en la que se van mostrando las trazas. La página incluye un objeto Flash que es el que se encarga de recibir las trazas enviadas por las aplicaciones.
- Una clase o conector con la consola. Esta clase lo único que hace es crear un objecto LocalConnection que envia la cadena a la consola de log. Esta clase es incluida en tu película.
Las principales características son:
- Ultra ligero. Solo hay que incluir la clase estática que conecta con la consola y listo.
- Se pueden añadir nuevos tipos de trazas sin necesidad de recompilar nada. Por cada traza se genera una etiqueta <p class="type"> donde type es el segundo parámetro pasado a la función trace. Así que para hacer un nuevo tipo de traza sólo hay que modificar la css de la consola.
- Atajos de teclado de la consola:
- r: reinicia el log.
- p: pausa/continúa el log.
- a: agregar línea en blanco.
- Se puede pasar como tercer parámetro de la función trace un valor boleano (true/false) que reiniciará el log, por lo que se borrarán todas las trazas anteriores. Muy útil cuando hay millones de trazas en el log.
Como muchos otros sistemas de log para Flash, ZLog se basa en el objeto Local Connection de Flash, por lo que trazará cualquier cosa que le llegue a través de la conexión que establece la consola (método "log", conexión "_ZLog"). De esa forma es muy sencillo realizar las trazas tanto desde MTASC como desde el IDE.
Formas de uso
Desde MTASC
Para utilizar ZLog desde MTASC simplemente tienes que añadir a tu comando de compilación -trace tv.zarate.Utils.Trace.trc. De esa forma MTASC sustituirá todas las llamadas trace("Hello world") por tv.zarate.Utils.Trace.trc("Hello world"). Para saber un poco más sobre cómo MTASC trabaja con trace, échale un ojo a su referencia.
Desde el IDE de Flash, o AS2 compilado con el IDE.
Si a pesar de que trabajar con MTASC es muy fácil aún sigues con el IDE, puedes también utilizar ZLog. Simplemente tendrás que sustituir tus trace() por Trace.trc(), en este caso no tienes un compilador que preprocese el código para sustituir las llamadas automáticamente.
Parámetros opcionales de la clase (tanto MTASC como IDE)
Si queremos definir un tipo de traza simplemente hay que pasarlo como segundo parámetro: trace("Hello world","fatal"). Ese segundo parámetro se debe corresponder con una clase definda en la css de la consola.
Se puede reiniciar la consola pasando true como tercer parámetro. trace("Hello world","",true).
Demo
Para ver ZLog en funcionamiento puedes abrir la consola aquí, y luego pinchar sobre cualquiera de los botones que tienes debajo.
Descarga
Todo el código de ZLog es abierto y te lo puedes bajar de aquí:
ChangeLog
- Versión 1.1 - 10 junio 2007
-
- La consola pasa de Flash a HTML.
- Mejorada la traza de objetos XML. Para trazar un objeto XML hay que pasarlo "sólo":
- trace(myXML); // bien
- trace("This is my XML > " + myXML); // mal
- Añadido "a" como atajo para agregar una línea en blanco a la consola.
- La versión mínima de player requerida para ver la consola es 8 debido al uso de ExternalInterface para la comunicación Flash -> JavaScript.
- tv.zarate.Utils.Trace se ha actualizado para permitir el paso de objetos a la consola (necesario para poder trazar objetos XML).
- Ahora se comprueba si la el objeto LocalConnection de la consola se crea correctamente y se muestra error en caso contrario.
- Versión 1.0 - 25 marzo 2006
- Versión inicial.
Licencia
El uso de ZLog corre enteramente a tu riesgo, yo lo uso a diario y no tengo mayores problemas. El código está licenciado bajo Creative Commons, puedes verlo, modificarlo y utilizarlo si lo crees conveniente, incluso en proyectos comerciales. Si tienes dudas, quieres ver algo nuevo en ZLog o encuentras un bug, mándame un mail a zlog [*] zarate . tv.
HTH :D
Zárate