Quel est le problème avec ce code? Il imprime Whatsup à la stdOut, et rien au fichier dans/tmp. Il crée le fichier, mais rien n'y est jamais écrit, même lors de la consignation de charges de données ('w' * 20000). Et il ne semble pas y avoir aucun gestionnaire spécifié après que je vérifie.logging.config.dictConfig ne semble pas fonctionner
>>> logger.handlers
[]
>>> logger.warning("Whatsup")
Whatsup
>>>
import logging
import logging.config
import multiprocessing
import threadfilter
VERBOSE_LOGGING = 1
directory = '/tmp/'
configDict = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'detailed': {
'class': 'logging.Formatter',
'format': '%(asctime)s - %(levelname)s =%(threadName)s= - Completer: %(message)s'
}
},
'handlers': {
'fileH': {
'class': 'logging.FileHandler',
'filename': '%s/ZZZZZZZZZZ_dispatcher_jobComplete3r.log' % (directory),
'formatter': 'detailed'
}
},
'loggers': {
'root': {
'handlers': ['fileH'],
'level': VERBOSE_LOGGING
}
}
}
logging.config.dictConfig(configDict)
logger = logging.getLogger()
logger.handlers
logger.warning("Whatsup")
Aucune erreur n'est levée non plus, il semble juste ignorer silencieusement ma configuration.
Python 3.6.1