Django: comment définir le niveau de journalisation sur INFO ou DEBUG

J'ai essayé de changer le niveau de debug DEBUG dans Django parce que je veux ajouter quelques messages de débogage à mon code. Il ne semble avoir aucun effet.

Ma configuration de journalisation:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'simple': {
            'format': '%(levelname)s %(message)s'
        },
    },
    'handlers': {
        'console':{
            'level':'DEBUG',
            'class':'logging.StreamHandler',
            'formatter': 'simple'
        },
    },
    'loggers': {
        'django.request':{
            'handlers': ['console'],
            'propagate': False,
            'level': 'DEBUG',
        },
    },
}

Code:

import logging ; logger = logging.getLogger(__name__)
logger.debug("THIS MESSAGE IS NOT SHOWN IN THE LOGS")
logger.warn("THIS ONE IS")

Sortie sur la console:

WARNING:core.handlers:THIS ONE IS

J'ai aussi essayé paramètre DEBUG = False et DEBUG = True dans mon fichier de paramètres. Des idées?

Edit: Si j'ai mis le niveau de journal sur l'enregistreur directement, ça marche:

import logging ; logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
logger.debug("THIS MESSAGE IS NOT SHOWN IN THE LOGS")

De sortie:

DEBUG:core.handlers:THIS MESSAGE IS NOT SHOWN IN THE LOGS
WARNING:core.handlers:THIS ONE IS

Mais: Il semble que le fichier de config est totalement ignoré. Il imprime les deux états toujours même si j'ai mis les deux entrées dans la config de retour à l'ERREUR. Est-ce le bon comportement ou suis-je manque encore quelque chose?

source d'informationauteur kev | 2013-11-01