Registro mediante multiprocesamiento.

Tengo el siguientelogger clase (como logger.py):

import logging, logging.handlers
import config

log = logging.getLogger('myLog')

def start():
    "Function sets up the logging environment."
    log.setLevel(logging.DEBUG)
    formatter = logging.Formatter(fmt='%(asctime)s [%(levelname)s] %(message)s', datefmt='%d-%m-%y %H:%M:%S')

    if config.logfile_enable:
        filehandler = logging.handlers.RotatingFileHandler(config.logfile_name, maxBytes=config.logfile_maxsize,backupCount=config.logfile_backupCount)
        filehandler.setLevel(logging.DEBUG)
        filehandler.setFormatter(formatter)
        log.addHandler(filehandler)

    console = logging.StreamHandler()
    console.setLevel(logging.DEBUG)
    console.setFormatter(logging.Formatter('[%(levelname)s] %(message)s')) # nicer format for console
    log.addHandler(console)

    # Levels are: debug, info, warning, error, critical.
    log.debug("Started logging to %s [maxBytes: %d, backupCount: %d]" % (config.logfile_name, config.logfile_maxsize, config.logfile_backupCount))

def stop():
    "Function closes and cleans up the logging environment."
    logging.shutdown()

Para el registro, lanzologger.start() una vez, y luego importarfrom logger import log en cualquier archivo de proyecto. Entonces solo usolog.debug() ylog.error() cuando sea necesario. Funciona bien desde cualquier lugar del script (diferentes clases, funciones y archivos) pero no funcionará en diferentes procesos que se realicen a través de la clase de multiprocesamiento.

Obtuve el siguiente error:No handlers could be found for logger "myLog".

¿Que puedo hacer?

Respuestas a la pregunta(1)

Su respuesta a la pregunta