3d6ab87ec4
modifié: superTornado.py
34 lines
1.4 KiB
Python
34 lines
1.4 KiB
Python
import logging
|
|
from logging.handlers import RotatingFileHandler
|
|
import time
|
|
from datetime import datetime
|
|
|
|
class Log(object):
|
|
def __init__(self) :
|
|
# création de l'objet logger qui va nous servir à écrire dans les logs
|
|
self.logger = logging.getLogger()
|
|
# on met le niveau du logger à DEBUG, comme ça il écrit tout
|
|
self.logger.setLevel(logging.DEBUG)
|
|
|
|
# création d'un formateur qui va ajouter le temps, le niveau
|
|
# de chaque message quand on écrira un message dans le log
|
|
formatter = logging.Formatter('%(asctime)s :: %(levelname)s :: %(message)s')
|
|
# création d'un handler qui va rediriger une écriture du log vers
|
|
# un fichier en mode 'append', avec 1 backup et une taille max de 1Mo
|
|
file_handler = RotatingFileHandler('m/fichier/log', 'a', 1000000, 1)
|
|
# on lui met le niveau sur DEBUG, on lui dit qu'il doit utiliser le formateur
|
|
# créé précédement et on ajoute ce handler au logger
|
|
file_handler.setLevel(logging.DEBUG)
|
|
file_handler.setFormatter(formatter)
|
|
self.logger.addHandler(file_handler)
|
|
|
|
# création d'un second handler qui va rediriger chaque écriture de log
|
|
# sur la console
|
|
self.steam_handler = logging.StreamHandler()
|
|
self.steam_handler.setLevel(logging.DEBUG)
|
|
logger.addHandler(steam_handler)
|
|
|
|
|
|
def printL(self,pMsg):
|
|
self.logger.info(pMsg)
|