Todos los servidores aplicativos, cuentan con un sistema de bitácoras (logs). Este sistema de bitácoras, es posible aprovecharlo para desarrollar una aplicación web, sin necesidad de definir, ni depender de una implementación de bitácora en particular.
Requisitos
- ubuntu 14.04
- docker
- cliente svn
Instalación
Código fuente
Crear el directorio de trabajoDescargar el codigo fuente$ mkdir -p $HOME/razzek/lab/java-logging
$ cd $HOME/razzek/lab/java-logging $ svn co https://svn.riouxsvn.com/razzeklabs/trunk/java_logging/ .
Ejecución
Ejecutar los scriptsEn este punto, se tiene en ejecución 2 servidores aplicativos, un tomcat (8.0.x) y un JBoss (9.0.2.Final). El servidor JBoss no esta modificado, el servidor tomcat se modificó, para agregar el grupo manager-script y el usuario deploy, para poder deployar utilizando la aplicación manager, también se agregan los jars slf4j-api-1.7.13.jar y slf4j-jdk14-1.7.13.jar$ cd $HOME/razzek/lab/java-logging $ ./00-storage.sh && ./01-tomcat.sh && ./01-wildfly.sh
Compilación y construcción
Para compilar y generar el artefacto a deployar (war) en ambas aplicaciones, se ejecuta el script:Para validar el artefacto generado, se ejecuta el script:$ ./02-build.sh
El resultado muestra algo similar a:$ ./testwar.sh
El artefacto generado, no contiene jars, pero se emplea slf4j (existentes en JBoss 9 y agregadas a tomcat 8), para generar entradas en la bitácora (trace, debug, info, warn y error).Archive: /mnt/deployment/app.war testing: META-INF/ OK testing: META-INF/MANIFEST.MF OK testing: WEB-INF/ OK testing: WEB-INF/classes/ OK testing: WEB-INF/classes/razzek/ OK testing: WEB-INF/classes/razzek/java/ OK testing: WEB-INF/classes/razzek/java/logging/ OK testing: WEB-INF/content.jsp OK testing: WEB-INF/web.xml OK testing: WEB-INF/classes/razzek/java/logging/LogServlet.class OK testing: META-INF/maven/ OK testing: META-INF/maven/razzek.java.logging/ OK testing: META-INF/maven/razzek.java.logging/javaLogging/ OK testing: META-INF/maven/razzek.java.logging/javaLogging/pom.xml OK testing: META-INF/maven/razzek.java.logging/javaLogging/pom.properties OK No errors detected in compressed data of /mnt/deployment/app.war.
Bitácoras
Tomcat utiliza la bitacora nativa de java (java.util.logging) y JBoss utiliza log4j. Al ejecutar el scriptSe modifica la configuración indicando al sistema de bitácoras que los mensajes generador por razzek.java.logging, se alamacenen en el archivo app.log.$ ./03-log.sh
Para mostrar el contenido del archivo app.log, dentro del contenedor docker. se ejecuta el script para tomcat
o para wildfly:$ ./tail-tomcat.sh
$ ./tail-wildfly.sh
Instalación
Para instalar la aplicación creada en el paso de compilación y construcción. Se ejecuta el script:El script deploya tanto en tomcat, como en wildfly.$ ./04-deploy.sh
Validación
Para validar la instalación, se invoca la url para tomcat:Y para wildflyhttp://127.0.0.1:32000
Verificando que los logs se muestran en cada invocación en los respectivos archivos de logs (scripts tail)http://127.0.0.1:32001
No hay comentarios.:
Publicar un comentario