Django logger.error不会将日志记录条目保存到debug.log文件中

Django logger.error不会将日志记录条目保存到debug.log文件中,django,django-logging,Django,Django Logging,我遵循django文档并尝试使用logger.error将错误保存到debug.log文件中 LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'file': { 'level': 'DEBUG', 'class': 'logging.FileHandler', 'filename': 'debug.log', }, }, 'log

我遵循django文档并尝试使用logger.error将错误保存到debug.log文件中

LOGGING = {

'version': 1,
'disable_existing_loggers': False,
'handlers': {
    'file': {
        'level': 'DEBUG',
        'class': 'logging.FileHandler',
        'filename': 'debug.log',
    },
},
'loggers': {
    'django': {
        'handlers': ['file'],
        'level': 'DEBUG',
        'propagate': True,
    },
},
}


import logging
logger = logging.getLogger(__name__)
...... // some code here
    if not data:
        logger.error('Search term is not valid')
“搜索词无效”一句不会在控制台中打印出来,但不会保存到debug.log文件中


我不太清楚Django log是如何工作的。我的代码应该是这样的还是有问题?另外,如何将“搜索词无效”保存到debug.log文件中?非常感谢

尝试给出文件的完整路径
'filename':'/path/to/django/debug.log'

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
        'file': {
            'level': 'DEBUG',
            'class': 'logging.FileHandler',
            'filename': '/path/to/django/debug.log',
        },
    },
    'loggers': {
        'django': {
            'handlers': ['file'],
            'level': 'DEBUG',
            'propagate': True,
        },
    },
}

参考资料:

使用您在
settings.py
中给出的名称,在您的情况下,它是
django

import logging

# use name that you have given in settings in your case it is  django
logger = logging.getLogger('django')

def my_view(request, arg1, arg):
    ...
    if bad_mojo:
        # Log an error message
        logger.error('Something went wrong!')