Django: jak ustawić poziom dziennika na INFO lub DEBUG
Próbowałem zmienić poziom debugowania na DEBUG w Django, ponieważ chcę dodać kilka komunikatów debugowania do mojego kodu. Wydaje się, że nie działa.
Moja konfiguracja logowania:
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',
},
},
}
Kod:
import logging ; logger = logging.getLogger(__name__)
logger.debug("THIS MESSAGE IS NOT SHOWN IN THE LOGS")
logger.warn("THIS ONE IS")
Wyjście na konsoli:
WARNING:core.handlers:THIS ONE IS
Próbowałem także ustawić DEBUG = False i DEBUG = True w moim pliku ustawień. Jakieś pomysły?
Edytować: Jeśli ustawię poziom dziennika bezpośrednio w rejestratorze, działa:
import logging ; logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
logger.debug("THIS MESSAGE IS NOT SHOWN IN THE LOGS")
Wydajność:
DEBUG:core.handlers:THIS MESSAGE IS NOT SHOWN IN THE LOGS
WARNING:core.handlers:THIS ONE IS
Ale: Wygląda na to, że plik konfiguracyjny jest całkowicie ignorowany. Drukuje obie instrukcjezawsze nawet jeśli ustawię oba wpisy w konfiguracji z powrotem na BŁĄD. Czy to jest prawidłowe zachowanie, czy wciąż czegoś brakuje?