Uno de los temas mas sobrestimadas cuando se crea un programa es la gestión de logs. la mayoría de los programadores nos preocupamos mas por la funcionalidad y el rendimiento del sistema por desarrollar esto conlleva a que prestamos poca atención al registro de excepciones, dejar trazabilidad de lo ejecutado parece ser una perdida de tiempo en especial si el código escrito es realmente fácil y no es necesario para que el programa funcione y ejecute perfectamente.

Registrar la ejecución en el programa evita mucho dolores de cabeza cuando algo no esta bien en producción. Registrar  una gran cantidad de información de depuración puede ahorrar mucho tiempo comentando cierta función, pues esta bien documentada por el uso de logs, es por esto que siempre es una buena idea crear logs en poducción como durante el desarrollo, esto aplica para cualquier sistema que este desarrollando no importa el lenguaje que se utilice.

Logging en Python

En python es peculiarmente fácil crear log, solo es necesesario incluir el modulo de logg y listo import logging . Cada mensaje puede ser de diferente tipo y este define el nivel de importancia.

  • DEBUG: información detallada, normalmente utilizada para diagnosticar problemas.
  • INFO: información general.
  • ADVERTENCIA: información sobre algun problema en el futuro o que algo no termino como se espera.
  • ERROR: información sobre porque la acción realizada no se completo.
  • CRITICO: error grave normalmente usado para tener la ejecución de un proceso o del programa en si.

Para utilizar el modulo de loggin, simplemente tienes que crear un objeto logger.

como se puede apreciar solo se necesita llamar el método  getLogger y pasar como parámetro el nombre del log, ahora lo tenemos que especificar el nivel de registro por defecto, esto nos permite tener un registro detallado de cuando estemos desarrollando o probando la aplicación permitiendo así el control del detalle del log.

Luego tenemos que definir que formato deseamos para nuestro registro, en el ejemplo a continuación, se muestra cada mensaje con su marca de tiempo y su nivel de registro hay un montón de configuraciones que se pueden realizar todas estas en la documentación oficial.

por ultimo lo que se necesita crear es un controlador que es el encargado de escribir el registro en el log, podemos realizar cosas divertidas como todo los mensajes tipo INFO o superior almacenarlos en un archivo o cambiar el formato por cada tipo de mensaje.

Una vez terminado esto es solo indicarle al logger que utilice el controlador recientemente creado.

ahora podemos crear un programa relativamente sencillo que utilice el logger.

Para temas mas avanzados la documentación oficial es una buena guía.

 

Share: