Creación de un registrador global que se puede utilizar para
- crear un nuevo archivo de registro o
- vuelve registrador para un archivo de registro global.
Crear un módulo llamado llamada myLogger.py: Esto tendrá el código de creación del registro
myLogger.py:
import logging
def myLog(name, fname = 'myGlobalLog.log'):
'''Debug Log'''
logger = logging.getLogger(name);
logger.setLevel(logging.DEBUG)
fhan = logging.FileHandler(fname)
fhan.setLevel(logging.DEBUG)
logger.addHandler(fhan)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fhan.setFormatter(formatter)
'''comment this to enable requests logger'''
#logger.disabled = True
return logger
Ahora para crear un nuevo registro en el módulo dicen que una .py
from myLogger import myLog
log = myLog(__name__, 'newLog.log')
log.debug("In new log file")
Por lo tanto, debe pasar el nombre del archivo junto con el logger.
Para utilizar el registrador global en A.py:
from myLogger import myLog
log = myLog(__name__)
log.debug("In myGlobalLog file")
No necesita pasar el nombre del archivo en este caso, ya que usaremos el registro global.
muchas gracias – MFB
Esta solución funcionó como un encanto, incluso con la configuración del registrador personalizado. – Centurion