martes
nov082011
Log4j Web Tracker Tool
Mi nombre es Mariano Ruiz, y he creado una pequeño módulo Java llamado Log4jn Web Tracker (está empaquetado en un jar) para configurar el nivel de log en tiempo de ejecución de Log4j en una aplicación web. También permite ver los log desde la aplicación, y su configuración es muy simple, y sin dependencias externas.
Este producto lo realizé porque lo necesitaba en mis proyectos, debido al caos que hay a veces para cambiar la configuración de una aplicación, u obtener los logs, al ser desplegados en distintos entornos de prueba o producción. Los invito a ver la página web donde podrán descargar el .jar, y ver la documentación.
Noticia enviada por Mariano Ruiz
Reader Comments (14)
¡Excelente! Mil veces pensé en hacer algo así, nunca tuve la voluntad, así que salud. ¡Hacer las cosas es lo que cuenta!
Felicidades Mariano, la aplicación tiene muy buena pinta y sin duda es útil.
Respetando totalmente tu elección de licencia, el no tener acceso al código fuente quizá pueda limitar su uso en aplicaciones empresariales.
No piensas en una version open source a corto plazo???
felicitaciones :-)
El programa está muy bien. El único problema es que con aplicaciones como psi-probe puedes hacer lo mismo y más: http://code.google.com/p/psi-probe/
Pero para nada desmerece el mérito que tienes.
Un saludo.
Tengo pensado para la siguiente versión con mejoras y correcciones publicarlo con licencia GPL.
En cuanto a la comparación con la herramienta PSI-Probe, si bien es válida, el problema que intento solucionar tiene un enfoque un poco distinto:
La herramienta que mencionas al igual que muchas otras se instalan o vienen con el web-container (llámese Tomcat, JBoss, WebS...), o como un plugin/herramienta para el mismo, en cambio Log4j Web Tracker es un modulo que se acopla DENTRO de la aplicación (pasa a formar parte en realidad..), lo cual por su puesto tiene ventajas y desventajas:
Ventajas de una app con la Tool:
- No depende del webcontainer o su ecosistema para poder monitorearse.
- No tienes que pedirles a los sysadmin de tu webcontainer que te instalen ni habiliten ninguna tool (creo que es el punto más fuerte debido a la burocracia en entornos coorporativos grandes o heterogeneos).
Desventajas:
- Tienes que incluirlo en cada proyecto que necesitas la herramienta ya que no es "transparente" como cuando lo monitoreas desde una tool externa
- Todabía le faltan muchas funcionalidades (que espero seguir agregándole...)
Dependiendo de las necesidades y entorno de cada proyecto y corporación, puede serte más beneficioso entonces usar una u otra solución.
Excelente.....
Un proyecto muy util.
Excelente...
Un proyecto muy util....
Mariano, si haces el proyecto GPL sólo otros proyectos GPL podrán emplearlo. Te auguro poco futuro para el proyecto si vas por esa ruta. Yo lo haría LGPL, de tal modo que tienes garantizado que modificaciones al código van a ser opensource, y si alguien quiere hacer algún tipo de "customización"/mejora tiene que liberar el código.
Abraham,
No entiendo muy en detalle el tema de las licencias, asi que es bueno abrir el debate a esto.
Tengo de echo un pequeño proyecto con licencia LGPL (http://mr-common.googlecode.com), pero la LGPL en realidad no obliga a los que usen mi proyecto a publicar sus modificaciones tengo entendido, por eso hay tan pocos proyectos LGPL, y generalmente son como lo indica el nombre, de tipo libreria (la "L" en un principio significaba "Library", pero ahora significa "Lesser")
En cambio al publicarlo como GPL, tengo entendido que cualquiera es libre de usar mi proyecto tal cual lo publique sin importar el uso o licencia de codigo del producto donde lo incorpore, y solamente si hace cambios a mi codigo tiene que publicar sus fuentes, pero sino hace modificaciones, solo enlaza, no está obligado con la GPL al igual que la LGPL.
Según yo entiendo, tu proyecto a todo los efectos va a ser como una librería de la aplicación web, y el código de la aplicación web se va a enlazar con el de tu proyecto.
Si lo del párrafo anterior es correcto, lo que tú has descrito para la licencia GPL es precisamente cómo funciona la licencia LGPL. Con la licencia GPL, si tú usas la librería (aunque no tengas acceso al código fuente, aunque no hayas modificado nada) en forma binaria, tu código se vuelve también GPL. La LGPL permite usar el modo binario sin "infectarse" con la licencia vírica.
Mi recomendación es esta segunda licencia, porque eso hará que haya más gente que use tu proyecto, gane más visibilidad e incremente tu reputación. Que, siendo realistas, es lo más que probablemente vayas a sacar con el proyecto. Si usas GPL, sólo otros proyectos GPL podrán usar tu librería. Limitaras su uso considerablemente. Otro tema diferente es que alguna gente por ideología quiere usar GPL, porque cree que todo el software del mundo debería ser GPL.
Mirale el lado bueno a usar LGPL: Tu proyecto también será empleado en proyectos de código cerrado (que hay muchos), y a medida que crezca tu reputación, podrás ofrecer otros servicios de paga.
Saludos,
Abraham,
Tenías razón sobre la licencia LGPL, ya teniendo un proyecto bajo esa licencia de verdad no sabía la cobertura de la misma, así que fui a la fuente que es el texto de la licencia misma, y efectivamente es como tu dices, mientras que la GPL es más restrictiva en cuanto a su uso, no permitiendo ser enlazada por proyectos que no sean libres.
Ya hice el cambio en la home, y ahora está aclarado que la licencia del proyecto es la LGPL, con el atach del correspondiente código fuente.
Buena decisión, Mariano.
Saludos.