Как регистрировать журналы INFO в файле settings.py
Я пытаюсь регистрировать некоторые информационные сообщения конкретно в django settings.py. Я следую первому примеру в django documentation, который показывает простую конфигурацию. Единственное, что я изменил, это то, что журнал показывает сообщения уровня INFO. Когда я запускаю python manage.py runserver
, сообщение журнала никогда не показывается. Журнал показывается только для уровня WARNING или выше (более критического).
Вот моя конфигурация, которая находится в settings.py
import logging
...
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console': {
'class': 'logging.StreamHandler',
},
},
'': {
'handlers': ['console'],
'level': 'INFO',
'propagate': True
},
}
...
def do_something():
logger.info('Doing Something')
do_something()
Примечание Я пытаюсь регистрировать утверждения только в моем файле settings.py на данный момент.
Попробуйте поместить ключ level
внутрь обработчика
'handlers': {
'console': {
'level': 'INFO',
'class': 'logging.StreamHandler',
},
},
Я только что протестировал это на своем локальном устройстве, мой логгер выглядит следующим образом [вырезано]: (Надеюсь, это поможет!)
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'filters': {
'require_debug_true': {
'()': 'django.utils.log.RequireDebugTrue',
},
},
'handlers': {
'console': {
'level': 'INFO',
'filters': ['require_debug_true'],
'class': 'logging.StreamHandler',
},
},
'loggers': {
'django': {
'handlers': ['console'],
'level': 'INFO',
},
}
}
def do():
import logging
logger = logging.getLogger('django')
logger.info('TEST')