4. Configurando niveles de logs para Cloudhub


Manejar los logs en Mule para CloudHub es una tarea sencilla. La gran ventaja es que no necesitas redeplegar tu aplicación para modificar las configuraciones de logging.

 

Personalización de Logs en CloudHub

Por defecto, Mulesoft configura el logging de tus aplicaciones para operar de manera asíncrona y sólo registra mensajes de nivel INFO o superior. Esto significa que, sin cambios adicionales, los mensajes de los niveles DEBUG y TRACE, que ofrecen más detalle, no se mostrarán.

Ahora bien, si necesitas más detalle en tus logs para depurar o rastrear mejor lo que está pasando en tu aplicación, puedes hacer ajustes sin la necesidad de volver a desplegarla. Esto es posible gracias al Runtime Manager de Mulesoft, que te permite sobrescribir los niveles de log en aplicaciones ya desplegadas.

Por ejemplo, si quieres ver los logs de DEBUG para una categoría específica de tu aplicación, simplemente seleccionas el nivel de log DEBUG en el Runtime Manager para el paquete o la clase correspondiente. Así, podrás ver esos logs detallados en tiempo real, lo cual es muy útil para la resolución de problemas específicos o la monitorización de comportamientos inesperados durante el desarrollo y la producción.

 

Jerarquía de Niveles de Log en log4j2

En log4j2, tienes una jerarquía de niveles de log que va desde el más detallado al más general. Si eliges un nivel específico, recogerás todos los mensajes de ese nivel y de los niveles más críticos.

Aquí te explico cada uno:

  • ALL: Captura absolutamente todo. Cada detalle, por más minúsculo que sea, es registrado.
  • TRACE: Es para un grado de detalle incluso más fino que DEBUG. Si quieres saber exactamente cómo fluyen los datos y eventos, TRACE es tu nivel.
  • DEBUG: Proporciona información detallada para diagnósticos. Es tu herramienta de depuración para entender qué está pasando bajo el capó.
  • INFO: Te ofrece actualizaciones sobre el progreso y el estado general de la aplicación, sin los detalles excesivos de TRACE o DEBUG.
  • WARN: Alerta sobre situaciones que no son errores pero que podrían necesitar atención pronto.
  • ERROR: Indica problemas serios que afectan la funcionalidad de la aplicación, pero que no la detienen por completo.
  • FATAL: Marca errores críticos que probablemente rompan la aplicación o provoquen un comportamiento muy indeseado.
  • OFF: Este nivel desactiva el logging. No se registra nada.

Si configuras el nivel en ALL, por ejemplo, vas a ver mensajes de TRACE, DEBUG, INFO, WARN, ERROR y FATAL. Es una forma de decir «Dame todo lo que tienes». Mientras más arriba vayas en la jerarquía, más selectivo serás con la información que recopilas.

 

Uso del Componente Logger en Mule

Si quieres sacar trazas de los Flows que se ejecutan en el evento de Mule es necesario utilizar el componente de Logger.

Este componente tiene la siguiente estructura:

 

Prácticas Recomendadas de Mulesoft para Logging

En Mule, es una buena práctica incluir un identificador único en tus mensajes de log. Este ID puede ser un «correlation id» que Mule genera automáticamente, un ID que tú generas y almacenas en el payload o en los encabezados de las solicitudes HTTP, o cualquier otro ID que decidas usar.

Este «correlation id» es como una huella digital que te permite seguir un evento específico a medida que se mueve a través de tu sistema. Es súper útil para rastrear problemas o entender la secuencia de eventos durante una transacción.

 

Conclusión

La configuración efectiva de los niveles de log en Mulesoft te permite maximizar la visibilidad y el seguimiento de tus aplicaciones en CloudHub. Aprovecha las herramientas de Mulesoft para ajustar tus logs a medida y garantizar que tus aplicaciones funcionen de manera óptima y sin imprevistos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *