===== Introducción ===== LAGAR es la aplicación/stack proporcionada por ATICA para la recolección, parseo, almacenamiento y análisis de ficheros de logs de aplicaciones. Está basada en la pila de tecnologías ELK (ElasticSearch, Logstash y Kibana). En esta Wiki vamos a tratar el primer paso para poder trabajar con LAGAR: configurar nuestra aplicación FundeWeb. Solo se procesan los ficheros de log de **Producción**. El coste de recursos que supone el almacenamiento y análisis de todos los ficheros de logs es elevado. Además, la utilidad de la herramienta es obtener información real de la interacción de los usuarios finales con cada aplicación. ===== Configurar Aplicación ===== Las clases para la integración con Lagar vienen incluidas en la librería fundeweb-log4j a partir de las versiones fundeweb-log4j-1.5.7 (para FundeWeb 1.X) y fundeweb-log4j-2.0.5 (para FundeWeb 2.X). Si nuestra aplicación ya está trabajando con alguna de estas versiones de la librería, o con una versión posterior, solo es necesario modificar el patrón del log a escribir y realizar algunas comprobaciones: **1**. Revisar los ficheros **filtro-desarrollo.properties**, **filtro-preproduccion.properties** y **filtro-produccion.properties** y comprobar que la propiedad **log.file.name** tiene el siguiente valor: log.file.name=[nombreaplicacion]-application ¡ATENCIÓN! Hay que mantener [nombreaplicacion] como estuviera antes de la migración y prestar especial cuidado en el **guión** de la variable **log.file.name**. Debe ser un guión medio, p.ej.: **unica-application** **2**. Modificar el fichero **log4j.xml**: En el appender **fichero**, el valor del parámetro **ConversionPattern** debe ser: %d{DATE} [%X{session}] %3p %c{1}:%M:%L - Usuario: %X{username} - %m%n __Ejemplo de configuración:__ **3**. Una vez desplegados los cambios en cada entorno, hay que loguearse en nuestra aplicación y revisar que las líneas de log salen con el nuevo formato: 21 dic 2018 11:37:50,251 [KELQV7vT5Bl-oRvdv4OhdSZcvOLW5fUZuNhkzLiVOAZom8wXc_6x!-1551189648!1545388669907] INFO LagarEvents:45 - Usuario: ramon.ginel@ticarum.es - [155.54.67.188] - [Chrome-71.0.3578.98] - [Windows 7 - PC-AMD 64bits] 21 dic 2018 11:37:50,418 [KELQV7vT5Bl-oRvdv4OhdSZcvOLW5fUZuNhkzLiVOAZom8wXc_6x!-1551189648!1545388669907] WARN FacesMessages:77 - Usuario: ramon.ginel@ticarum.es - An empty message is ignored **¡ATENCIÓN!** Si el despliegue en __producción__ **NO** se realiza a través de Jenkins o GitLab, hay que comprobar que el fichero **log4j.xml** del repositorio SVN de **web_prod** tiene el patrón correcto ** %d{DATE} [%X{session}] %3p %c{1}:%M:%L - Usuario: %X{username} - %m%n** ===== Configurar LAGAR ===== Una vez terminada la configuración de la aplicación y comprobado que los logs se están escribiendo con el formato nuevo, hay que poner un JIRA a MNCS (DJ-AT-MNCS) para que gestionemos el alta de la aplicación en LAGAR. **Recordatorio:** Aunque el patrón de log4j se puede configurar en cualquier momento, solo debe solicitarse el alta para aplicaciones ya puestas en producción (o en su última fase de implantación). ===== WiKis Relacionadas ===== * [[https://wiki.um.es/wikis/lagar/doku.php?id=guia_desarrolladores|Guía Técnica para desarroladores para el uso de Kibana]] * [[https://wiki.um.es/wikis/lagar/doku.php?id=guia_lagartest|Entorno de desarrollo LAGARTEST]] ===== FAQs ===== === Carga de Logs BAJO DEMANDA === En ocasiones, para realizar alguna auditoria o un informe, es necesario realizar un análisis de logs antiguos que ya no aparecen en LAGAR. **Solución** \\ Solicitar una **CARGA BAJO DEMANDA** a Telemática para que vuelquen la información deseada en LAGAR vía jira con los siguientes datos: * **Proyecto**: DJ-AT-Telemática \\ * **Componente**: LAGAR \\ * **Título**: [LAGAR] Carga BAJO DEMANDA de la aplicación [NUESTRA_APLICACION] \\ * **Descripción**: \\ * [NUESTRO_GRUPO_DE_DESARROLLO] - [NUESTRA_APLICACION] \\ * [Fecha Inicio Carga] - [Fecha Fin Carga] (Rango de fechas a cargar) \\ * Enriquecimiento de Logs: No/Sí (Elegir una opción, por defecto **NO**. Sí para añadir información del directorio sobre los usuarios) \\ La información cargada __no es permanente__. Pasado un tiempo razonable Telemática borrará la carga. \\ //[[ramon.ginel@ticarum.es|Ramón Ginel Gea]] 04/01/2021 // ===== Solicitud/Registro de FAQ ===== Pon aquí tus propuestas de FAQs, indicando qué problema tienes, y buscaremos la solución lo antes posible. Si además lo has resuelto, puedes indicar cómo lo has hecho. Formato de petición de FAQ: **Título** //Descripción del problema// //Tecnología afectada (Fundeweb 1/2)// //Cómo reproducir el error// **Solución** //Descripción de la solución// Tus datos de contacto --- //[[correo@umOticarum.es|Tu Nombre]] dd/mm/yyyy //