Código de Python - Crear un fichero de log y rotarlo por tamaño

Imágen de perfil

Crear un fichero de log y rotarlo por tamañográfica de visualizaciones


Python

Publicado el 07 de Septiembre del 2012 por Xavi
4.964 visualizaciones desde el 07 de Septiembre del 2012. Una media de 28 por semana
Código que muestra como generar un archivo de log y rotar-lo cuando alcance un tamaño en bytes utilizando la clase logging.

Versión 1

Publicado el 07 de Septiembre del 2012gráfica de visualizaciones de la versión: Versión 1
4.965 visualizaciones desde el 07 de Septiembre del 2012. Una media de 28 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/usr/bin/env python
# -*- coding: utf-8 -*-
 
import logging
import logging.handlers
 
# Creamos una instancia al logger con el nombre especificado
logger=logging.getLogger('prueba')
 
# Indicamos el nivel máximo de seguridad para los mensajes que queremos que se
# guarden en el archivo de logs
# Los niveles son:
#   DEBUG - El nivel mas alto
#   INFO
#   WARNING
#   ERROR
#   CRITIAL - El nivel mas bajo
logger.setLevel(logging.DEBUG)
 
# Creamos una instancia de logging.handlers, en la cual vamos a definir el nombre
# de los archivos, la rotación que va a tener, y el formato del mismo
 
# Si maxBytes=0, no rotara el archivo por tamaño
# Si backupCount=0, no eliminara ningún fichero rotado
handler = logging.handlers.RotatingFileHandler(filename='file.log', mode='a', maxBytes=1024, backupCount=5)
 
# Definimos el formato del contenido del archivo de logs
formatter = logging.Formatter(fmt='%(asctime)s - %(name)s - %(levelname)s - %(message)s',datefmt='%y-%m-%d %H:%M:%S')
# Añadimos el formato al manejador
handler.setFormatter(formatter)
 
# Añadimos el manejador a nuestro logging
logger.addHandler(handler)
 
# Añadimos mensajes al fichero de log
logger.debug('message debug')
logger.info('message info')
logger.warning('message warning')
logger.error('message error')
logger.critical('message critical')



Comentarios sobre la versión: Versión 1 (0)


No hay comentarios
 

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s2213