Skip to main content

Marcas del formatter

En el formatter de la biblioteca logging de Python, puedes agregar varias marcas o placeholders que serán reemplazadas por valores específicos cuando se formatee un mensaje de registro. Estas marcas proporcionan información sobre el mensaje de registro, como la fecha y hora, el nombre del logger, el nivel de logging y el mensaje en sí. Aquí están las marcas más comunes que se pueden agregar en un formatter y lo que representan:

  1. %(asctime)s: La fecha y hora en la que se generó el mensaje de registro, en el formato especificado.

  2. %(name)s: El nombre del logger que generó el mensaje de registro.

  3. %(levelname)s: El nivel de logging del mensaje, como 'DEBUG', 'INFO', 'WARNING', 'ERROR' o 'CRITICAL'.

  4. %(message)s: El mensaje de registro en sí.

  5. %(pathname)s: La ruta completa del archivo que generó el mensaje de registro.

  6. %(filename)s: El nombre del archivo que generó el mensaje de registro.

  7. %(module)s: El nombre del módulo que generó el mensaje de registro.

  8. %(funcName)s: El nombre de la función que generó el mensaje de registro.

  9. %(lineno)d: El número de línea en el código fuente que generó el mensaje de registro.

  10. %(process)d: El ID del proceso que generó el mensaje de registro.

  11. %(thread)d: El ID del hilo que generó el mensaje de registro.

  12. %(threadName)s: El nombre del hilo que generó el mensaje de registro.

Estas marcas se utilizan en un formatter para definir el formato en el que se presentarán los mensajes de registro. Por ejemplo, puedes crear un formatter con el siguiente formato:

formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

Esto dará como resultado un mensaje de registro con la fecha y hora, el nombre del logger, el nivel de logging y el mensaje en sí, separados por guiones.

Al utilizar estas marcas en un formatter, puedes personalizar el formato de los mensajes de registro según las necesidades específicas de tu aplicación y el contexto en el que se están registrando los mensajes.